遍历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);

}

}

问题:造成死循环,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); 去调这段代码

}

}

版权声明:本文为博主原创文章,未经博主允许不得转载


猜你喜欢

转载自blog.csdn.net/qq_24607837/article/details/79721626
今日推荐