请问List集合存了几个字符串,我要获取第几个字符串的时候,结果越界了,如何解决?
List<String> aa = new ArrayList<String>();
aa.get(0);取第一个字符串
可是我不知道aa里有几个字符串
所以我进行了判断
if(null!=aa.get(2)&&aa.get(2).length>0) {
system.out.println(aa.get(2));
}
假如aa里只有2个字符串,所以aa.get(2)应该是null才对的啊
但是if(null!=aa.get(2)&&aa.get(2).length>0) {这一行已经报错了
这样的话 怎么判断啊
------解决方案--------------------aa里只有2个字符串,所以aa.get(2)越界了,
------解决方案--------------------aa.size()这个是长度。如果是遍历那么就是
for(int i = 0; i < aa.size(); i++){
aa.get(i);
}
------解决方案--------------------int length=aa.size();
if(length>=1 && 2<=length){
aa.get(2);
}
------解决方案--------------------楼上说的对
楼主,凡是有序集合的下标是从0开始的,你的例子里只有aa[0] aa[1],你代码只要执行到aa[2]就会报错。
你应该这么判断
if(aa.size() > 2){
你懂得...
}
这么初级的问题我都来拿分,善哉...羞愧中...