?????while(?i?<?3){
??System.out.println("請輸入學(xué)生ID:");
??String?ID?=?console.next();
??//判斷該ID是否被占用
??//?指定?輸入的ID?與?student的關(guān)系
??//此時ID?已與?相應(yīng)的student?綁定
??Student?st?=??students.get(ID);????
??if?(?st?==?null){
??//提示輸入學(xué)生姓名
??System.out.println("請輸入學(xué)生姓名:");
??String??name?=?console.nextLine();
??//新的?學(xué)生對象
??Student??newStudent?=?new?Student(ID,?name);
??students.put(ID,?newStudent);
??System.out.println("成功添加學(xué)生:"+students.get(ID).name);
???i++;
?? }?else?{
System.out.println("該學(xué)生已被占用!!");
continue;
}
??}
2016-08-05
ID是從鍵盤輸入的字符串,st是根據(jù)你輸入的ID從Map--students中取得的value值。首先進(jìn)行判斷,如果st為空,那么意味著這個ID沒有與之匹配的value值,也就是不存在,說明我們可以去添加這個ID?,F(xiàn)在這個ID已經(jīng)確定下來了,那么還差Student中的name。再次從鍵盤讀入,取得name。至此,ID,name都全了,用Student(String,String)的構(gòu)造方法新建一個Student對象---newStudent。要記得students是HashMap<String,Student>,尖括號里面的String其實就是ID,newStudent對象其實就是Student。