Java對象數(shù)組是由相同類型的對象構成的有序集合,可以在一個變量中存儲多個對象。在Java中,對象數(shù)組的聲明與基本類型數(shù)組的聲明方法相同,只需在類型的后面添加一對方括號。例如:
Person[] persons = new Person[3];
上面的代碼創(chuàng)建了一個包含3個Person對象的數(shù)組。當創(chuàng)建一個數(shù)組時,Java會自動為每個元素分配內存空間,并將其初始化為默認值(比如null或0)。
Java對象數(shù)組在內存中的存儲結構
Java對象數(shù)組在內存中是連續(xù)的,每個元素占用相同的內存空間。因此,可以使用下標訪問或操作數(shù)組中的任何元素,例如:
persons[0] = new Person("Bob", 25);persons[1] = new Person("Alice", 23);persons[2] = new Person("Charlie", 30);
上面的代碼通過下標操作給數(shù)組中的每個元素賦值。在內存中,這些元素是連續(xù)的,如下圖所示:
Java對象數(shù)組的應用
Java對象數(shù)組常用于以下場景:
存儲和處理大量的對象。
實現(xiàn)列表、隊列、堆棧等數(shù)據(jù)結構。
傳遞和返回多個對象。
實現(xiàn)多維數(shù)組。
例如,可以使用對象數(shù)組來存儲學生信息,并通過循環(huán)遍歷數(shù)組來打印每個學生的成績:
class Student { String name; int score;}Student[] students = new Student[3];students[0] = new Student("Bob", 80);students[1] = new Student("Alice", 90);students[2] = new Student("Charlie", 70);for (int i = 0; i < students.length; i++) { System.out.println(students[i].name + ": " + students[i].score);}
上面的代碼使用對象數(shù)組來存儲學生信息。在循環(huán)中,通過下標訪問數(shù)組中的每個學生,然后打印它的成績。輸出結果如下:
Bob: 80Alice: 90Charlie: 70