Java基础(八) 遍历list 造成的死循环

本文探讨了在遍历List过程中添加元素导致的死循环问题。通过具体代码示例展示了错误做法,并给出了修正建议。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

遍历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); 去调这段代码

   }

}

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值