for循环嵌套if

J2EE 码拜 3年前 (2017-04-17) 539次浏览
本人写了一个for循环,用来遍历contactsList集合中的存储的全部名字,然后将符合某个搜索条件的名字又重新存入list集合中,再显示出来。
但是本人打了log后发现,这个for循环只能循环一次,是原因是本人在for循环中使用了if语句。但是本人想实现这个功能,怎样改进代码才可以呢?求帮助QWQ

for(int i = 0;i<contactsList.size();i++){
                    String name = contactsList.get(i);
                    if(name.contains(serchName)){
                        contactsList.clear();
                        contactsList.add(name);
                    }
                    Log.i("test","for循环了一次"+i+name);
                }
解决方案

5

contactsList.clear();
你的这条语句把list清空了;
所以只循环了一次

5

contactsList.clear();清空了list ,多定义一个list ,存放你需要的数据,返回这个list

10

楼上说得对啊,你contactsList.clear();这句是清空List,执行这一句后,List就为空了,size()就为0了,这一次循环完成后,再进入for循环时,i=1,已经大于ontactsList.size()了,所以不进入循环!
你需要做的就是把这句删了,看看List里放的什么对象,然后在if判断里new一个,用来临时存放查找到的元素,然后把它添加到List里就行了!

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明for循环嵌套if
喜欢 (0)
[1034331897@qq.com]
分享 (0)