遍历list 造成的死循环
2018-03-28 00:57
162 查看
一.遍历list造成的死循环
源码:List<Student> students = new ArrayLIst<>();(list里面有三个对象值)for(int I=0;i<students.size();I++){
Student student = students.get(I);
if(I==2){
student.setName(“张三");
students.add(student);
}
}
问题:造成死循环,studens.size()会一直增加
原因:每次循环后,又添加了这个对象到数组中,增加了数组的长度,而且list里面是允许存储先通过对象的。进而导致了一list的增加,造成了死循环。其实添加对象属性就可以了,对象本身还在list里面的。
解决:
List<Student> students = new ArrayLIst<>();(list里面有三个对象值)
for(int I=0;i<students.size();I++){
Student student = students.get(I);
if(I==2){
student.setName(“张三");
//students.add(student); 去调这段代码
}
}
版权声明:本文为博主原创文章,未经博主允许不得转载
相关文章推荐
- 用LinkedList尽量别用for循环遍历
- vuejs 使用value in list 循环遍历数组的警告解决
- 自己用的循环遍历查找List的方法
- Python中list循环遍历中删除数据报溢出异常
- java中循环遍历删除List和Set集合中元素的方法(推荐)
- 循环遍历两个,把相同的值放入第三个list里面
- 联合使用list() each() while循环遍历数组
- PHP循环遍历数组的3种方法list()、each()和while总结
- jsp循环遍历后台List结果的三种常用方法
- ArrayList可以用for循环遍历,LinkedList不要用for循环遍历
- set,list,map集合循环遍历
- Java中List循环遍历的时候删除当前遍历对象
- java foreach循环遍历List 如何比较List里面值的大小 里面值是int
- java 实现两个list交叉循环遍历
- 解决vuejs 使用value in list 循环遍历数组出现警告的问题
- java 定义一个线程池 循环遍历list
- PHP——数组中的each(),list()和while循环遍历数组
- PHP学习笔记——使用list(),each(),while()循环遍历数组
- Python的list循环遍历中,删除数据的正确方法
- Java 循环遍历删除set list中的元素