删除信息运行后出现异常

来源:3-12 删除宠物猫信息

三千越甲可吞吴

2017-03-26 10:28:02

for(Student stu:set){
			if("William".equals(stu.getStuName())){
				set.remove(stu);
			}
		}
		System.out.println("删除William后的学生信息:");
		for(Student stu:set){
			System.out.println(stu);
		}
		控制台:
[学号:2, 姓名:Lucy, 成绩:95.0]
 [学号:3, 姓名:William, 成绩:65.0]
 [学号:1, 姓名:Tom, 成绩:87.0]
重复添加学生后的学生信息:
 [学号:2, 姓名:Lucy, 成绩:95.0]
 [学号:3, 姓名:William, 成绩:65.0]
 [学号:1, 姓名:Tom, 成绩:87.0]
******************************
找到了学生William!
*****************************
找到了学生William
Exception in thread "main" java.util.ConcurrentModificationException
	at java.util.HashMap$HashIterator.nextNode(HashMap.java:1429)
	at java.util.HashMap$KeyIterator.next(HashMap.java:1453)
	at com.imooc.test.StuTest.main(StuTest.java:54)


写回答

1回答

喜欢做梦的鱼

2017-03-26

在增强型for循环中不能进行remove操作,这就是产生异常的原因。如果解决了你的疑惑,欢迎采纳~~

1

0 学习 · 7235 问题

查看课程