foreach遍历时不能改变集合的值

最近遇到一个比较坑爹的事情,因为list这些集合比较常用foreach进行循环,比较方便。所以项目里很多foreach,但是今天遇到一个异常,如下图: 很困惑,于是看了foreach的底层源码。才发现原来foreach的底层是迭代器iterator实现的,通过下标判断是否还有下一个元素,但是对于下标边界,foreach只会算一次,这一点和for不同。 这就是为什么我们改变list的值后,出现异常的
相关文章
相关标签/搜索