![](/img/trans.png)
[英]Why does System.out.println() in Java print to the console?
[英]Why does System.out.println(map.put(1,“test”)) print null value?
class Test3 {
public static void main(String args[]){
Map<Integer, String> aa = new HashMap();
System.out.println(aa.put(1, "test"));
}
}
每當我執行此語句時,它都會打印 null 值。 我想知道為什么它打印 null 值。 怎么了?
來自Map.put
的 Javadoc :
V put(K key, V value)
...
返回:與鍵關聯的先前值,如果沒有鍵映射,則返回 null。
map 在調用put
之前為空,因此“沒有鍵映射”,因此返回null
。
put 的實現如下所示
@Override
public V put(K key, V value) {
return putImpl(key, value);
}
如果 map 之前包含密鑰的映射,則舊值將被替換。 否則 null 將返回,因為沒有映射。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.