關于老師程序中的一段代碼。
在判斷時: student?st=?students.get(Id);//判斷該Id是否被占用。 輸出結果時: System.out.println("成功添加學生:"+students.get(Id).Name); 如果把輸出結果去掉.Name: System.out.println("成功添加學生:"+students.get(Id)); 那么結果會變成: 成功添加學生:collection.student@232204a1 是不是說明,key所映射的是一個內存地址?
BTW,換了新版面不太習慣啊。。。提問版面不能像舊版那樣直接在視頻下方嗎?
2015-12-21
因為Key映射的Student本身就是個類,它自己有兩個屬性:id和name,也就是說對應兩個值,這時候".name"代表你取name這個值,如果“.id”就代表取Student的id值;如果你什么都不“點”,就代表Student類實例,所以輸出時,字符串強轉輸出的就是實例的地址了。