黑马程序员技术交流社区

标题: 增强for遍历集合时候可以删除元素吗? [打印本页]

作者: dubei1993    时间: 2016-6-10 13:13
标题: 增强for遍历集合时候可以删除元素吗?
如题。我认为是可以得。但是老师说不可以。

作者: ancheng    时间: 2016-6-10 13:48
不能删除
作者: cuisq    时间: 2016-6-10 14:06
不可以,其他两种可以
作者: 欧胤祥    时间: 2016-6-10 14:30
增强for循环是不能删除元素的,它只能遍历, 而普通for循环是可以删除元素,但是注意每次删除后索引要减减
作者: dubei1993    时间: 2016-6-10 16:03
欧胤祥 发表于 2016-6-10 14:30
增强for循环是不能删除元素的,它只能遍历, 而普通for循环是可以删除元素,但是注意每次删除后索引要减减 ...

嗯。很正确
作者: wsl123456    时间: 2016-6-10 19:36
不能删除
作者: haohaoandtt    时间: 2016-6-10 20:19
可是试一试迭代器iteration,集合里面的各个成员指针迭代,适合长度变化的任何容器哟,个人意见仅供参考
作者: lifeiwangyue    时间: 2016-6-10 20:35
由于其 底层是迭代器  ,原则上是不可以的,你要是删除的只有一个元素   删除之后直接break  跳出循环   不然会出现并发修改异常
作者: lifeiwangyue    时间: 2016-6-10 20:37
lifeiwangyue 发表于 2016-6-10 20:35
由于其 底层是迭代器  ,原则上是不可以的,你要是删除的只有一个元素   删除之后直接break  跳出循环   不 ...

使用迭代器删除的元素不会出现异常
作者: tianzhu2725    时间: 2016-6-10 21:39
进来学习
作者: huangzhehua    时间: 2016-6-10 21:46
当然是不可以啊
作者: 戎马生涯    时间: 2016-6-11 00:38
正解!不能删除~~~
作者: 001jiaojiao    时间: 2016-6-11 19:35
它只是遍历,不能删除
作者: 孙自文    时间: 2016-6-11 19:42
不能删除
作者: jianhua0798    时间: 2016-6-11 22:54
当然不能
作者: 代码是什么    时间: 2016-6-11 23:08
不可以的
作者: 善良的死神达乐    时间: 2016-6-11 23:25
增强for循环的底层就是迭代器吧!迭代器删除都还要是自己的remove方法才行...增强for循环压根就没法调自己的方法吧!!!!
作者: 一个大西瓜    时间: 2016-6-12 01:03
不能删除 只能遍历。。。。迭代器可以是操作元素 但是只能删除  
iterator 提供三个方法  hasNext()  next()  和remove()

作者: Fangjie    时间: 2016-6-12 07:04
是的,不能删除,删除要用到迭代器!
作者: wby127889561    时间: 2016-6-12 08:27
17楼才是正解,说到点上了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2