2016-12-05 104 views
-2

所以我有一個對象數組,500確切地說,我已經在我的代碼中聲明瞭。 我運行一個for循環從int i = 0到i < 500;並期待所有的對象被初始化或構建。我檢查了數組[499]的成員數據,並且由於它返回true,所以它被構建。但由於某種奇怪的原因,500給了我一個錯誤,我認爲這是第500個元素沒有構建的。有人可以向我解釋for循環機制,爲什麼它沒有構造?我看了其他帖子,看到人們做同樣的事情,並沒有enter image description here帶來任何錯誤。 我不知道我的代碼有什麼問題,請幫忙。第一次如此問題。對不起,如果我問一個問題太簡單了。For循環幫助,初學者初始化一個對象數組。 (Java)

這是我的代碼/執行的兩個snippits。

enter image description here

這裏是我的代碼櫃面的鏈接不起作用:

public class FinalProject { 

    public static void main(String[] args) { 
     Sample[] library = new Sample[500]; 

     for(int i = 0; i < library.length; i++) 
     { 
      library[i] = new Sample(); 
     } 

     System.out.println("Availability of index 1: " + library[499].getAvailability()); 
    } 

} 
+1

java數組是零索引,位置0是第一個元素,位置499是第500個元素 – chatton

+0

未來,請將代碼和錯誤粘貼爲文本,而不是圖像。 – xenteros

+0

請在SO內尋找答案。不要提出重複的問題。 – Mohit

回答

5

Java是0索引,這意味着數組索引從0開始。因此,你的數組索引是0 ... 499,500個元素。索引500沒有對象,因爲它不存在,導致您的錯誤。