避免list中remove导致ConcurrentModificationException
凡不是就着泪水吃过面包的人是不懂得人生之味的人——歌德
我们在list循环中调用remove函数删除自身元素可能会导致java.util.ConcurrentModificationException
例如
| // 构造从0到20的list | 
首先我们可以使用removeIf代替
| list.removeIf(i -> i.equals(i)); | 
其次我们可以使用迭代器
我们可以看到removeIf的源码正是使用了迭代器

如下
| Iterator<Integer> iterator = list.iterator(); | 
在无法使用removeIf的场景下即可使用Iterator下的remove()方法
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 蒋立坤的博客!
 评论
Va









