1.数组是引用数据类型,引用数据类型传递的是内存的使用权,是一块内存空间,它可以由多个单位同时使用。
而赋值的过程并不是把a数组内的数据传递给b,而是把a数组的内存使用权与b共享。所以当a和b共享同一个数组内存时,不管改变数组a内的值还是改变数组b内的值,该数组都会改变。
2.定义并初始化:
2.1 int[] arr;
arr=new int[5];
for(int i=0;i<arr.length;i++) arr[i] = i;
2.2 int[] arr=new int[5];
for(int i=0;i<arr.length;i++) arr[i] = i;
2.3 int[] arr = {1,2,3,4,5};
2.4 int[] arr = new int[]{1,2,3,4,5};//中括号里不能写值;
3.数组一旦确定长度即不可更改,数组元素只能修改,不能删除、增加。
4.数组定义时,只给定长度而不赋值,会有默认值填充:
int[] arr=new int[5];//arr[1]==0;
double[] arr=new double[5];//arr[1]==0.0;float类型同样为0.0
String[] arr=new String[5];//arr[1]==null;
boolean[] arr=new boolean[5];//arr[1]==false;
char[] arr=new char[5];//输出空值;
5. int[] arr = new int[10];
arr=Arrays.copyOf(arr,arr.leng/2);//从新为数组赋值,通常用于改变数组长度,之所以可以改变数组长度,
// 是因为arr是对数组的引用,而非数组的本身,这相当于重新使arr指向另一个数组,为arr重新初始化。