2016-10-17 60 views
0

我需要一些幫助,我自己學習如何處理Java中的地圖,今天我試圖通過鍵從Hashmap中減去值,但現在我卡住了。Java減去HashMap中的值鍵

這些是我想要減去的地圖值(用鍵對值之間的算術減法)。

HashMap<Integer,String> map = new HashMap<Integer,String>(); 
map.put(1, "10"); 
map.put(2, "5"); 

在下面我想重點喜歡

(key1) - (key2) = 5 
+3

如果你想要做的值算術,你爲什麼將它們存儲爲字符串? –

+0

好的,我會更正這個 – Achin

+1

你應該使用'Map '。那麼問題就會消失。 – EJP

回答

4

你將不得不這些字符串第一解析成整數減去。這是因爲您正在將值存儲爲String,因此無法執行算術運算。

Integer.parseInt(map.get(1)) - Integer.parseInt(map.get(2)) 

另外,你可以將值存儲爲整數像這樣。

HashMap<Integer,Integer> map = new HashMap<Integer,Integer>(); 
map.put(1, 10); 
map.put(2, 5); 

,並執行以下

map.get(1) - map.get(2) 
+0

@亨利,我意識到:)因此做出了修正。 –

0

您需要先解析字符串轉換成整數,然後它。減去。

它是這樣: -

int result = Integer.parseInt(map.get(1)) - Integer.parseInt(map.get(2))