0

我有一个 HashMap,它的键是某个类的对象,值是另一个 HashMap,键是字符串,值是 Double:

HashMap<MyClass, HashMap<String, Double>> myHashMap;

我需要一个循环,将键(对象)和值(HashMap)添加到这个 HashMap,但我不能在循环中创建一个新的 HashMap 变量作为它的“值”。本质上,每个 MyClass 对象都必须有带有对应双精度的字符串。

这可能吗?这还有什么意义吗??

4

2 回答 2

3

例子:

YourClass someObject = new YourClass();
//putting object to map with empty hashMap value
myHashMap.put(someObject, new HashMap<String,Double>());
//adding String,Double to created before hashMap value
myHashMap.get(someObject).put("PI", 3.14);
于 2012-12-05T15:34:10.597 回答
1

你的意思是像:

    Object objectKey;
    String stringKey;
    Double value;
     .
     .
     .

    loop

    if(!myHashMap.containsKey(objectKey)){
        myHashMap.put(objectKey, new HashMap<String, Double>());
    }

    HashMap<String, Double> accordingHashMap = myHashMap.get(objectKey);

    accordingHashMap.put(stringKey, value)

    endloop
于 2012-12-05T15:45:58.817 回答