java 将List<Object>分组为Map<String,List<String>> 使用stream
时间: 2024-06-16 09:03:17 浏览: 21
在Java中,可以使用Stream API将`List<Object>`分组为`Map<String, List<String>>`。下面是一个示例代码:
```java
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
public class Main {
public static void main(String[] args) {
List<Object> objects = List.of(
new Object("A", "Apple"),
new Object("B", "Banana"),
new Object("A", "Avocado"),
new Object("C", "Cherry"),
new Object("B", "Blueberry")
);
Map<String, List<String>> groupedMap = objects.stream()
.collect(Collectors.groupingBy(Object::getKey,
Collectors.mapping(Object::getValue, Collectors.toList())));
System.out.println(groupedMap);
}
static class Object {
private String key;
private String value;
public Object(String key, String value) {
this.key = key;
this.value = value;
}
public String getKey() {
return key;
}
public String getValue() {
return value;
}
}
}
```
在上面的代码中,我们首先创建了一个`List<Object>`对象,其中每个对象都有一个键和一个值。然后,我们使用Stream的`groupingBy`方法将对象按照键进行分组,并使用`mapping`方法将值映射为列表。最后,我们将结果收集到一个`Map<String, List<String>>`中。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)