List<String> 使用stream转map 其中String 为key ,value 为new List
时间: 2024-04-26 22:27:11 浏览: 99
关于map的 一个key对应多个value
可以使用Java 8中的Stream API将List<String>转换为Map<String, List<String>>。代码如下:
```
List<String> list = Arrays.asList("a", "b", "c", "a");
Map<String, List<String>> map = list.stream()
.collect(Collectors.groupingBy(s -> s, Collectors.mapping(s -> "new List", Collectors.toList())));
```
上述代码中,首先将List<String>转换为Stream<String>,然后使用groupingBy对元素进行分组,其中第一个参数为分组的依据,即String类型的值;第二个参数为分组后的值的处理方式,即将String类型的值转换为"new List"字符串,然后将其收集到一个新的List中。最后,将分组后的结果收集到一个Map<String, List<String>>中。
阅读全文