凡不是就着泪水吃过面包的人是不懂得人生之味的人——歌德
我们在list
循环中调用remove
函数删除自身元素可能会导致java.util.ConcurrentModificationException
例如
1 |
|
首先我们可以使用removeIf
代替
1 |
|
其次我们可以使用迭代器
我们可以看到removeIf
的源码正是使用了迭代器
如下
1 |
|
在无法使用removeIf
的场景下即可使用Iterator
下的remove()
方法
凡不是就着泪水吃过面包的人是不懂得人生之味的人——歌德
我们在list
循环中调用remove
函数删除自身元素可能会导致java.util.ConcurrentModificationException
例如
1 |
|
首先我们可以使用removeIf
代替
1 |
|
其次我们可以使用迭代器
我们可以看到removeIf
的源码正是使用了迭代器
如下
1 |
|
在无法使用removeIf
的场景下即可使用Iterator
下的remove()
方法