如果將從Map內提取一個整數值並將其放置到一個新的int變量中並添加一個值,爲什麼++
運算符不能與map.get()
一起使用功能?例如,int foo = map.get(key)++;
使用++一元運算符與Java中的地圖獲取功能
爲了解決這個問題我用
HashMap<key, Integer> map = new HashMap<key, Integer>();
//Integer values are added in
int foo = map.get(key);
foo++;
但我很好奇,爲什麼在之前的例子是無效參數。根據文檔,Map get()
函數返回指定鍵映射到的值;如果此映射不包含鍵映射,則返回null。
授予返回的值不爲空,將返回一個整數,所以不應該在進入foo之前增加整數嗎?
即使返回的類型是基本'int',一元漸變操作符也不能與任何方法調用一起使用。 – 2014-11-25 06:42:55
@Vince Emigh您能解釋原因嗎?我正在尋找一些深入的東西。 – 2014-11-25 07:20:43