分配內存空間
數組名=new 數據類型[數組長度];
new關鍵字用來實現為數組或對象分配內存 (堆內存)
數組具有固定的長度。獲取數組的長度: 數組名.length
定義數組+分配內存空間
數據類型[]數組名=new 數據類型[數組長度];
定義數組時不指定長度,分配空間時指定數組長度;如:String cities[] = new String[6];
數組元素:
數組名[下標值];
數組下標從0開始 scores[0]=75;
數組的內存分配 棧內存和堆內存
如定義一個數組 int[]scores將在棧內存中為scores 分配內存空間,其值是一個不確定的值。
當執行語句scores=new int[5]時,將在堆內存分配連續5個空間,每個空間4個字節,用於存放整型數據,其初始值為0,然后將該段空間首地址,也就是第一個元素的地址,比如0*3000,賦給scores變量。該地址相當於一個指針,指向堆內存中分配的空間。此時堆內存中分配的5個空間可以分別使用scores[0],一直到scores[4]來表示。當執行四個賦值語句時,分別用指定值填充到對應元素位置。如果此時將null值賦給scores時,scores變量將不再指向任何位置,此時堆內存中分配的空間就變成了垃圾,由垃圾回收器在某一時間進行回收。
在方法中定義的變量,包括基本數據類型變量和引用數據類型變量,都將在棧內存中分配空間,當超過變量作用范圍后,自動回收
我的總結:初始化=定義數組+分配空間+賦值