还有数组一旦定义,就无法改变其长度,为什么这样写不报错
int [] array = new int[20];
array = new int [11];
int [] array = new int[20];
array = new int [11];
new int[20]你先创建了一个大小为20的数组空间然后指向它,new int [11]又创建了一个新的大小11的数组空间然后指向它。
其实就是array的引用地址发生变化,数组的大小并没有变化
int [] array = {0,0}表示你创建了一个2位整形数组,里面存的值分别为0,0
int [] array =new int[2]表示你创建了一个2位整形数组,没有向其中赋值。因为是int型数组,所以会自动往里面赋值0;
2array = new int [11];.你用的还是原来的数组,只不过用他的11位。
地址没变,是不会报错的。