我有一个List<HashMap<String,String>>
,我想在java中将其转换为List<Map<String,String>>
。有人可以帮我这个吗?
感谢
答案 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);
}
希望这能解决您的问题。