我有一个 Map 对,想把它变成一个带有 Pair 对象的 ArrayList。
我知道我可以做这样的事
List<Pair<A,B>> nvpList = new ArrayList<Pair<A,B>>(2);
for(Map.Entry<String, String> entry : pairs.entrySet()){
Pair n = new Pair(entry.getKey(), entry.getValue());
nvpList.add(n);
}
我们如何在 java8 中使用流来做到这一点?
最佳答案
考虑到泛型,您可以将其执行为:
<A, B> List<Pair<A, B>> convertMapToListOfPairs(Map<A, B> pairs) {
return pairs.entrySet().stream()
.map(entry -> Pair.of(entry.getKey(), entry.getValue()))
.collect(Collectors.toList());
}
关于java - 将 Map<A, B> 转换为 List< Pair<A,B>> - 在 A、B 是类的情况下,这是最有效的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56679047/