天涯蝶舞
2015-12-30 11:50
public void testRemove() {
// 获取从键盘输入的待删除学生ID字符串
Scanner console = new Scanner(System.in);
while (true) {
// 提示输入待删除的学生的ID
System.out.println("请输入要删除的学生ID!");
String ID = console.next();
// 判断该ID是否有对应的学生对象
Student st = students.get(ID);
if (st == null) {
// 提示输入的ID并不存在
System.out.println("该ID不存在!");
continue;
}
students.remove(ID);
System.out.println("成功删除学生:" + st.name);
break;
}
}
这一段代码中,
students.remove(ID);
System.out.println("成功删除学生:" + st.name);
先执行的remove(ID),再调用已经被删除的ID对应的name吗?都已经删除了,不存在,怎么还能调用被删除的学生name啊?
删除只是在students这个map里删除了,st还在
Java入门第三季
409792 学习 · 4340 问题
相似问题