我的目標是創建一個地圖的地圖,以便我可以通過其關鍵字檢索外部地圖的信息,然後通過它們的鍵訪問其「內部」地圖。地圖地圖 - 如何將內部地圖保存爲地圖?
但是,當我得到每個內部地圖時,我創建的地圖最初成爲一個對象,我不能像使用外部地圖一樣使用鍵來訪問它的值。
爲了向你學習專家,我想知道如何將所有的地圖保存爲地圖。或者,有沒有可能?
這裏是我的鍛鍊計劃:
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class MapExample {
public static void main(String[] args) {
Map<Object,String> mp=new HashMap<Object, String>();
// adding or set elements in Map by put method key and value pair
mp.put(new Integer(2), "Two");
mp.put(new Integer(1), "One");
mp.put(new Integer(3), "Three");
mp.put(new Integer(4), "Four");
Map<Object,String> mp2=new HashMap<Object, String>();
mp2.put(new Integer(2), "Two2");
mp2.put(new Integer(1), "One2");
mp2.put(new Integer(3), "Three2");
mp2.put(new Integer(4), "Four2");
Map<Object,String> mpMaps=new HashMap();
mpMaps.put("Map1",mp);
mpMaps.put("Map2",mp2);
System.out.println("This is a map of Maps: " + mpMaps);
for (int i=0;i<mpMaps.size();i++){
ArrayList a = new ArrayList(mpMaps.keySet());
Object o=a.get(i);
System.out.println("all together: " + mpMaps.size() + "each element is: " + o + " value: " + mpMaps.get(o));
}
}
}
的解決方案:
Map<Object,Map<Object,String>
Map<String, Object> mpMaps=new HashMap<String, Object>();
由阿米爾和sleske
想一想爲你的目的另一個可能的解決方案是有一個單一的哈希映射作爲鍵值對。這將減少整個事情的複雜性(也因爲對於實際的泛型語法來說是相當痛苦的)。 – Jack 2010-11-07 23:26:49
是的,那很好!謝謝!我的需求來自一個項目,我需要首先對一張地圖進行排序,然後檢索每張地圖的值以供進一步使用。 – john 2010-11-07 23:53:11