List快速失败机制:为什么这段代码的执行结果会不同

List快速失败机制:为什么这段代码的执行结果会不同

if("2".equals(item)) 替换成if("1".equals(item))执行结果不同

2的时候会抛快速失败异常,1的时候没有异常

记住 , list的remove操作,不要直接操作,转换成Iterator再进行操作

List<String> list = new ArrayList<>(16);

list.add("1");

list.add("2");

for (Iterator<String> iter = list.iterator(); iter.hasNext(); ) {

if (iter.next().equals("2")) {

iter.remove();

}

}

回答

以上是 List快速失败机制:为什么这段代码的执行结果会不同 的全部内容, 来源链接: www.h5w3.com/113605.html

回到顶部