为了账号安全,请及时绑定邮箱和手机立即绑定

ArrayList遍历或者迭代的时候能否删除元素?

ArrayList遍历或者迭代的时候能否删除元素?

慕无忌1623718 2019-05-08 16:45:09
关于ArrayList的面试题目其实并没有太听明白面试官问的什么意思,大概意思就是java的ArrayList在遍历或者迭代的时候能否删除元素,当时并没有get到面试官的点,现在都不太明白他想问什么希望大家能帮我分析一下面试官什么意思,他想考察什么问题正确的答案是什么
查看完整描述

2 回答

?
莫回无

TA贡献1865条经验 获得超7个赞

遍历的时候可以删除元素,但是要注意手动修改一下循环变量(减1),否则会导致中间的某些元素错误地跳过,遍历不到。
用迭代器迭代的时候可以删除元素,但是只能通过迭代器来删除,不能直接在数组上删除,否则迭代器会抛出异常。
如果有多个迭代器同时迭代的话不能删除,否则其他迭代器同样会抛出异常
                            
查看完整回答
反对 回复 2019-05-08
?
红颜莎娜

TA贡献1842条经验 获得超12个赞

都可以,但是循环的时候会有坑,就是删除一个元素(n)之后,后边的元素会自动前移,此时第n+1个元素会移动到第n的位置,正常循环会跳过这个元素,需要对下标做-1的操作
                            
查看完整回答
反对 回复 2019-05-08
  • 2 回答
  • 0 关注
  • 555 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信