将列表<pair <t,u >>更改为Map <t,u>

时间:2019-03-28 16:57:29

标签: java java-8

只要列表没有重复项,如何将配对列表(List>)替换为地图。

1 个答案:

答案 0 :(得分:0)

只需遍历List并对每个元素执行正确的操作即可将其拉开并从中构建Map:

List<Pair<String, Integer>> mylist;

Map<String, Integer> myMap = new HashMap<>();
for (Pair<String, Integer> aPair : mylist) {
    myMap.put(aPair.getLeft(), aPair.getRight());
}

或一般而言,在一种方法中:

public <T,U> Map<T, U> toMap(List<Pair<T, U>> aList) {
    Map<T, U> myMap = new HashMap<>();
    for (Pair<T, U> aPair : aList) {
        myMap.put(aPair.getLeft(), aPair.getRight());
    }
    return myMap;
}