2017-04-12 47 views
0

有一個List如何知道List有一個特定的索引?

List<Integer> l = new ArrayList<Integer>(); 
l.add(300); 
l.add(3070); 
if (l.get(8) == null) System.out.println("null"); else System.out.println("something else"); 

在運行時,我得到了ArrayIndexOutOfBound例外,因此如何知道一個特定的指數存在?

回答

2

你可以用列表的大小和減去1使用ArrayList.size方法來找出最後一個索引

3

簡單;你致電:list.size()

與數組類似,您希望在訪問索引之前檢查列表的長度。

如果你不這樣做;那麼你已經自己找到了「答案」:試圖訪問一個無效索引會導致ArrayIndexOutOfBoundsException丟到你身上。

不要誤會我的意思,但真的答案在這裏:研究你打算使用的概念。

您似乎對「列表」的工作方式有一些瞭解(也許是基於其他編程語言中的類似概念)。但這不是你寫代碼的方式:你不要假設。你轉向javadoc尋找你想要使用的東西;你研究這個。或者你閱讀相應的tutorials

1

檢查列表的大小。不能有指數超過size-1

1

你應該像的大小ArrayList檢查添加下面的代碼:

if (l.size()>8 && l.get(8) == null) 
System.out.println("null"); 
else 
System.out.println("something else"); 

使用& &算子在if語句添加mutlipal條件。

相關問題