开发者社区> 问答> 正文

JAVA中异常复现如何理解?

JAVA中异常复现如何理解?

展开
收起
vncamyi27xznk 2021-11-14 20:38:53 327 0
1 条回答
写回答
取消 提交回答
  • "在 Java 中, 如果在 foreach 循环里对某些集合元素进行元素的 remove/add 操作的时候,就会触发 fail-fast 机制,进而抛出 CMException。 如以下代码: console.log(List<String> userNames = new ArrayList<String>() {{ add(""Hollis""); add(""hollis""); add(""HollisChuang""); add(""H""); }}; for (String userName : userNames) { if (userName.equals(""Hollis"")) { userNames.remove(userName); } } System.out.println(userNames);)

    以上代码,使用增强 for 循环遍历元素,并尝试删除其中的 Hollis 字符串元素。运行以上代码,会抛出以下异常: Exception in thread ""main"" java.util.ConcurrentModificationException at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:909) at java.util.ArrayList$Itr.next(ArrayList.java:859) at com.hollis.ForEach.main(ForEach.java:22) 同样的,可以尝试下在增强 for 循环中使用 add 方法添加元素,结果也会同样抛出该异常。

    资料来源:《Java工程师成神之路(基础篇)》,链接:https://developer.aliyun.com/topic/download?id=923"

    2021-11-16 15:43:20
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载