0

请帮我将 a 转换HashMap<String, ArrayList<String>>HashMap <String, String>,其中每个ArrayList都应转换为String包含 ArrayList 元素的一个。

4

1 回答 1

3

我相信这就是您正在寻找的。

//HashMap<String, ArrayList<String>> hashMap;  
//initialized somewhere above

HashMap<String, String> newHashMap = new HashMap<>();

for (Map.Entry<String, ArrayList<String>> entry : hashMap.entrySet())
{
    newHashMap.put(entry.getKey(), entry.getValue().toString());
}

不确定您的问题是否与toString()或如何迭代 HashMap,如果是后者,这里是如何迭代 map

这是一个从头到尾的示例:

    ArrayList<String> al = new ArrayList<>();
    al.add("The");
    al.add("End");

    HashMap<String, ArrayList<String>> hashMap = new HashMap<>();
    hashMap.put("This is", al);

    HashMap<String, String> newHashMap = new HashMap<>();

    for (Map.Entry<String, ArrayList<String>> entry : hashMap.entrySet())
    {
        newHashMap.put(entry.getKey(), entry.getValue().toString());
    }

    System.out.println(newHashMap.toString());
    //prints {This is=[The, End]}
于 2013-06-22T20:37:02.020 回答