Map<key,value> 根据 List<key> 生成List<value> java
时间: 2023-11-11 17:58:23 浏览: 138
Java中 List《map》把里面map中某个key相同记录的其他key 的 value 合并
可以使用Java8的Stream API来实现该功能,具体代码如下:
```java
List<Key> keys = Arrays.asList(key1, key2, key3); // 假设已经有 List<Key>
Map<Key, Value> map = new HashMap<>(); // 假设已经有 Map<Key, Value>
List<Value> values = keys.stream()
.map(map::get)
.collect(Collectors.toList());
```
上述代码中,首先将输入的 `List<Key>` 转换为一个 Stream,然后使用 `map()` 方法将每个 Key 映射为其对应的 Value,最后使用 `collect()` 方法将所有 Value 收集到一个新的 List 中。其中,`map::get` 表示将每个 Key 作为参数传递给 `map.get()` 方法,使用 `::` 符号可以将方法引用转换为函数式接口。
阅读全文