Java陣列元素


可以使用括在括號中的元素索引來參照存取陣列的每個元素。第一個元素的索引為0,第二個元素1,第三個元素2等。
這稱為基於零的索引。陣列的最後一個元素的索引是陣列的長度減1。假設有一個長度為5的陣列,陣列元素的索引分別是:0,1,2,34

注意:第一個元素的索引值是 0,而最後一個元素的索引值是:5

參照陣列的不存在元素會引發一個執行時錯誤。

例如,在程式碼中使用myID[5]將丟擲異常,因為myID的長度為5,而myID[5]參照了第6個元素,它不存在的。
可以為陣列的元素賦值如下:

myID[0]   = 10;    // Assign  10  to the   first element of  myID 
myID[1]   = 20;    // Assign  20  to the   second  element of  myID 
myID[2]   = 30;    // Assign  30  to the   third  element of  myID 
myID[3]   = 40;    // Assign  40  to the   fourth  element of  myID 
myID[4]   = 50;    // Assign  50  to the   fifth element of  myID

以下語句將myID陣列的第三個元素的值賦給int型別變數temp

int temp  = myID[2]; // Assigns 30  to temp

陣列長度

陣列物件有一個名為length的公共範例變數,它包含陣列中元素的數量。

int[] myID = new int[5]; // Create an  array of  length 5 
int len   = myID.length;      // 5  will be  assigned to len

length是陣列物件的屬性。在未建立陣列物件之前,是不能使用它的length屬性的。通常,使用迴圈存取陣列的元素。

for (int i = 0 ; i < myID.length; i++)   {
    myID[i] = (i + 1)  *  10;
}

初始化陣列元素

陣列元素總是初始化。原始資料型別的陣列元素被初始化為其資料型別的預設值。例如,數位型別陣列元素初始化為0,布林型別元素為false,參照型別元素為null
下面的程式碼說明了陣列初始化:

預設情況下,intArray [0]intArray [1]intArray [2]都會被初始化為 0

int[]  intArray = new int[3];

bArray[0]bArray[1]初始化為false

boolean[] bArray  = new boolean[2];

參考型別陣列的範例。strArray [0]strArray [1]初始化為 null

String[]  strArray = new String[2]

下面程式碼中,person陣列的所有100個元素都初始化為null

Person[]  person = new Person[100];

下面說明了一個範例變數和一些區域性變數的陣列初始化。

public class Main {
  private boolean[] bArray = new boolean[3]; // An instance variable

  public Main() {
    for (int i = 0; i < bArray.length; i++) {
      System.out.println("bArray[" + i + "]:" + bArray[i]);
    }
  }

  public static void main(String[] args) {
    int[] myID = new int[3]; // A local array variable
    for (int i = 0; i < myID.length; i++) {
      System.out.println("myID[" + i + "]:" + myID[i]);
    }
    String[] name = new String[3]; // A local array variable
    for (int i = 0; i < name.length; i++) {
      System.out.println("name[" + i + "]:" + name[i]);
    }
  }
}

上面的程式碼生成以下結果。

myID[0]:0
myID[1]:0
myID[2]:0
name[0]:null
name[1]:null
name[2]:null