java分配內存空間


分配內存空間

數組名=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變量將不再指向任何位置,此時堆內存中分配的空間就變成了垃圾,由垃圾回收器在某一時間進行回收。

 

在方法中定義的變量,包括基本數據類型變量和引用數據類型變量,都將在棧內存中分配空間,當超過變量作用范圍后,自動回收

 

我的總結:初始化=定義數組+分配空間+賦值


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM