在使用带有ArrayList的foreach时,我知道使用add/remove方法将无法工作,因为它会抛出并发修改异常,但为什么我能够在同一个foreach循环中使用set方法更改值?
以下是示例代码:
for (Integer integer : arr) {
if (integer==2) {
arr.set(1, 6);
}
System.out.println(integer);
}
System.out.println(arr);
Run Code Online (Sandbox Code Playgroud)
如果我们将更改arr.add()然后它会抛出一个错误,但是设置它运行正常,这是什么原因?
| 归档时间: |
|
| 查看次数: |
133 次 |
| 最近记录: |