在通过for循环遍历整个List/Map等的时候,如果想要进行remove的操作,这时就更改了迭代集合,会出现错误
一种方法是如果只会remove一个可以remove后直接break
另一种是把集合先复制一遍
但是最好的办法是在网上看到的一种,用iterator
Iterator<Integer> iter = list.iterator(); while (iter.hasNext()) { if (xxx) { iter.remove(); } }
超方便!
感谢大佬orz
原文:https://www.cnblogs.com/pinkglightning/p/10730909.html