2014-02-12 38 views
-1

我想要做的是有一個地圖,它實際上將值保存爲一件事,但被聲明爲另一個例如實際持有價值爲字符串,但PUT/GET將使用整數...我可以用不同的方式定義一個散列表,它的聲明

Map<String,String> map = new HashMap<String,String>(); 

我可以用這個地圖

map.put("A","1"); 
String ret = map.get("A"); 

但是這將讓我一個字符串,我需要'把'放在一個字符串中。

我想是看跌/ get方法接受一個I​​nteger值(但仍地圖商店...

map.put("A",1); 
Integer ret = map.get("A"); 

我怎樣才能做到這一點?

NB這ISN」牛逼專門爲字符串/整數轉換,只是任何類型之間的轉換。

感謝。

+1

Map 表示「包含字符串作爲鍵的映射,字符串作爲值」。你想要一個包含字符串作爲關鍵字,整數作爲值的地圖。你推斷什麼? –

+2

對不起?我想打開一家橘子店並出售橘子**,但**我想接受香蕉的交付。你會用這些香蕉做什麼? –

+1

該地圖用於存儲和檢索值。它不會在各種類型的對象之間進行類型轉換。 – Henry

回答

2

您可以使用Object作爲價值類型,它可以存儲String,Integer,Double,對於這個問題幾乎任何東西。但是在使用Object時需要非常小心,因爲您必須相應地從地圖中獲取每個值(否則您將始終得到ClassCastException)。

Map<String, Object> map = new HashMap<String, Object>(); 

僅供參考,我不建議你使用它。相反,請確保你的Map必須持有,並具有相應的值類型。

1

只需

Map<String,Integer> map = new HashMap<String,Integer>(); 
0

爲什麼有人要存儲在不同的表現比是做出來的值的值?您仍然可以從一個整數中創建一個字符串,並在從地圖中獲取它後反轉,但是您的優勢是什麼?

相關問題