转换List <hashmap <string,string>&gt;列出<map <string,string>&gt; java的

时间:2016-06-01 04:58:59

标签: java android

我有一个List<HashMap<String,String>>,我想在java中将其转换为List<Map<String,String>>。有人可以帮我这个吗? 感谢

2 个答案:

答案 0 :(得分:1)

你想的更容易。

首先,创建一个List<Map<String, String>>

List<Map<String, String>> result = new List<>();

然后,只需遍历原始列表并将每个项目添加到新列表中:

// This for loop basically says "for each item in yourOriginalList..."
// if you didn't know
for (HashMap<String, String> item : yourOriginalList) {
    result.add(item);
}

“为什么我可以在HashMap s列表中添加Map?”你可能会问。

那是因为多态。由于Map是一个接口而HashMap实现了Map,因此只要您需要Map,就可以给它HashMap,只要泛型类型参数是一样的。

答案 1 :(得分:0)

除了你必须创建一个新的Map列表之外什么都没有。然后迭代HashMap列表,只需将每个对象添加到Map列表中。如下所示:

List<HashMap<String, String>> hashMapList = new LinkedList<HashMap<String, String>>();
HashMap<String, String> hashMap = new HashMap<String, String>();
hashMap.put("Ussain", "Bolt");
hashMapList.add(hashMap);

List<Map<String, String>> mapList = new LinkedList<Map<String, String>>();
for (HashMap<String, String> map : hashMapList) {
    mapList.add(map);
}

希望这能解决您的问题。