public void testMapRemove() { Scanner scanner=new Scanner(System.in); while(true) { ? ?System.out.println("請(qǐng)輸入想要?jiǎng)h除學(xué)生的ID"); ? ? String ID=scanner.next(); //報(bào)錯(cuò)行 ? ? Student stu=map.get(ID); if(stu!=null){ map.remove(ID); System.out.println("成功刪除學(xué)生"+map.get(ID).name); break; ?} else { System.out.println("該ID不存在!"); continue; } ?} } Exception in thread "main" java.util.NoSuchElementException at java.util.Scanner.throwFor(Unknown Source) at java.util.Scanner.next(Unknown Source) at com.imooc_collection.SetMap.testMapRemove(SetMap.java:50)
1 回答

慕少7573967
TA貢獻(xiàn)6條經(jīng)驗(yàn) 獲得超2個(gè)贊
拋出這個(gè)NoSuchElementException異常,表示,沒(méi)有這么多的元素了。
就是,本來(lái)這時(shí)候不應(yīng)該再執(zhí)行的,而你while(true)一直死循環(huán)了。