创建数组
初始化:
数据类型 [ ] 数组名 = new 数据类型 [ 长度 ]
数据类型 数组名 [ ] = new 数据类型 [ 长度 ]
静态初始化:
数据类型 [ ] 数组名 = { 数据1,数据2,...}
数据类型 数组名 [ ] = { 数据1,数据2,...}
数据类型 数组名 [ ] = new 数据类型 [ ] { 数据1,数据2,... }
数组的默认值
整数类型数组:0
浮点类型数组:0.0
布尔类型数组:false
字符类型数组:0或者 ' ' 或者 '\u0000' ( ' ' 空字符串,在内存中有对应的内存地址)
引用类型数组:null(一种特殊的值,表示内存中没指向任何地址)
数组的扩容
//定义原数组
int[] arr1 = { 1,2,3 },
//定义新数组
int[] arr2 = new int[ arr1.length + 1 ]
//利用循环拷贝数组
for(int i = 0; i < arr1.length; i++){
arr2[i] = arr1[i]
}
//将原数组变量指向新数组
arr1 = arr2
数组的拷贝
//1.system类中提供的拷贝方法
system.arraycopy( src, srcPos, dest, destPos, length)
/**
* src:原数组
* srcPos:原数组的起始位置
* dest:目标数组
* destPos:目标数组的起始位置
* length:拷贝的长度
*无返回值,改变目标数组
*/
//2.Arrays类提供的数组拷贝方法
Arrays.copyOf( original, newLength)
/**
* original:原数组
* newLength:新数组的长度
* 返回值:返回新数组
*/