为什么set在遍历的时候不可以remove

为什么set在遍历的时候不可以remove

老师,请问为什么set在遍历的时候不可以remove呢?

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,在遍历集合时,只是建议不要删除集合元素。如果删除的刚好是集合的最后一个元素,删除该元素后,集合不再遍历是没有问题的。或者删除后添加break语句跳出循环,也不会有问题。如果删除后还要继续执行循环,就会发生异常了。所以,要避免在遍历的时候执行删除操作。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!


  • 慕仔5998689 提问者 #1
    谢谢老师,但是我不明白的地方就是,为什么删除后还要继续执行循环就会发出异常呢?
    2020-05-22 22:10:02
  • 好帮手慕阿园 回复 提问者 慕仔5998689 #2
    同学你好,因为删除数据后,集合的存储结构就发生变化了,出现数据的不一致性;继续遍历就会发生异常。
    2020-05-23 09:40:30
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师