我写的程序,运行出来为什么是这样,从控制台输入:李,传进对象中,在输出,为什么变了呢?以下是我的添加函数
public void testIuput(){
String ID;
String name;
Scanner sc=new Scanner(System.in);
int i=0;
while(i<3){
System.out.println("请输入第"+(i+1)+"位学生ID:");
ID=sc.next();
Student st=students.get(ID);//判断ID是否被占用,get返回的是value
if(st==null) {
System.out.println("请输入学生的姓名:");
name=sc.next();
Student stu=new Student(ID,name);
students.put(ID, stu);
System.out.println("已经添加成功第 "+students.get(ID).id+" 位学生"+students.get(ID).name);
i++;
} else{
System.out.println("该ID已经被占用了,请重新输入:");
continue;
}
}
}
我运行了你的代码,没有出现你的问题,不过有个新问题,输入姓名的时候,光标如果不在最下面的空白处,程序无法运行,但也没有报错。
不科学
这是随机的 有时候正常,有时候不正常!
不科学!