为什么我到最后遍历出来还是有三个课程??不应该remove后剩两个吗
package pakedate1;
import java.util.*;
import java.util.Map.Entry;
public class Maptest2 {
public Map<String,String>map;
public Maptest2() {
this.map=new HashMap<String,String>();
}public void test() {
Scanner input=new Scanner(System.in);
System.out.println("请输入学生ID:");
int i=0;
while(i<3) {
String console=input.nextLine();
String st=map.get(console);
if(st==null) {
System.out.println("请输入学生姓名:");
String name=input.nextLine();
Student st1=new Student(console,name);
map.put(console, name);
System.out.println("成功添加学生:"+map.get(console));
i++;
}else {
System.out.println("已被占用请重新输入");
continue;
}
}
}public void test2() {
Set<String>st=map.keySet();
for (String string : st) {
String stt=map.get(string);
if(stt!=null) {
System.out.println("添加的学生为:"+stt);
}
}
}public void test3() {
System.out.println("请输入待删除的课程ID");
Scanner input2=new Scanner(System.in);
while(true) {
String number=input2.nextLine();
String stt2=map.get(number);
if(stt2==null) {
System.out.println("不存在该ID");
continue;
}
map.remove(stt2);
System.out.println("成功删除课程"+stt2);
break;
}
}public void test4() {
Set<Entry<String, String>>stt3=map.entrySet();
for (Entry<String, String> entry : stt3) {
System.out.println("还有如下学生:"+entry.getKey()+entry.getValue());
}
}
public static void main(String[] args) {
Maptest2 t2=new Maptest2();
t2.test();
t2.test2();
t2.test3();
t2.test4();
}
}