2017-02-20 38 views
0

我尝试使用一个索引来得到一个Arraylist的元素,并检查是否为空。我想检查的ArrayList索引声明,不使用得到

我想:

if(!ArrayList.get(index)) { 
    // do something 
} 

而且它还有索引越界异常。

当然,我可以使用的try-catch,但我想知道是否有这样做不使用的try-catch任何其他方式?

我想我能做到这一点更简单,但我不能。我试图阅读API文档,但似乎没有我想做的事情。

+0

噢和,我tryed如果(ArrayList.get(指数)== NULL )...它也会因错误而停止! –

+6

'index> = list.size()'? – Biffen

+2

你的'ArrayList' *实例*是否叫做'ArrayList'?有多混乱。 – Biffen

回答

2

你可以只检查列表的size()(当然,它也必须非负):

if (index >= 0 && index < myList.size()) { 
    // Do something with myList.get(index) 
} 
+1

myList.size()>指数 –

+0

哦博伊,我是白痴10minuate后...生病接受的答案! –

+0

@MauricePerry grr ...愚蠢的错字。感谢您的注意! – Mureinik

1
if(index < ArrayList.size() && ArrayList.get(index) != null) 
+0

好吧,我tryed扭转这样的:如果(指数> ArrayList.size()&& ArrayList.get(指数)== NULL)和它的坠毁,嗯我有没有错字? –

+1

@ChangWonJeongJuicycool如果'指数> ArrayList.size()''然后ArrayList.get(指数)'不会永远* *回报'null'甚至什么*媲美*'null'。 – Biffen

+0

@Biffen啊,这就是为什么我得到错误时尝试get()错误的索引?凉!如果是这样,现在我完全理解,谢谢你! –