1.函数的重载:允许函数同名但是需要函数的参数列表(参数类型和个数而不包括参数名)不同,重载与返回类型无关。所以功能一致的函数可以重名。
2.数组
固定同一种类型数据
元素类型[]数组名 = new 元素类型[元素个数和长度]
元素类型 数组名[] = new 元素类型[元素个数和长度]
new是用于在内存中分配空间给数组,分配在堆里面,是实体,包括数组等。起始位置是[0]
数组名 的数据类型是 数组类型(引用数据类型3种的一种),引用数组地址,只有引用数据类型才能用null值。
java在内存中划分了5片空间进行数据的存储:栈内存(储存局部变量,函数,参数和for循环中的变量,使用完会释放。栈和堆的处理方式不一样),堆内存(每一个实体都有地址来标识,都有默认值,int 0,double 0.0 float 0.0f boolean false)


垃圾回收机制:C++需要程序员手动清除;java会不定时自动清除没有引用的实体。
数组的初始化
int []arr = new int[5];
int []arr = new int[]{1,2,3,4,5};
or
int []arr = {1,2,3,4,5};
ArrayIndexOutOfBoundsException:数组越界
NullPointerException:空指针异常:没有任何指向
获取数组长度:数组名.length
[I@ : [ 数组类型 I int
容器:StringBuffer sb = new StringBuffer();(sb.append()往对象中加值,sb.reverse()翻转)
利用进制表,可以实现负数的进制转换,从数组尾部向头填值,再从断点向尾输出
int [] [] arr = new int[3][]长度不能省略,一维的长度可以省略。但是这样一维数组都没有初始化,arr[0],arr[1],arr[2]的值都是null,需要用new初始化.
int [] [] y int y [] [] int [] y []三种都可以