java List<Object> 使用stream流转Map<String,String>
时间: 2024-10-08 07:22:56 浏览: 49
java代码-使用java解决bean&map工具类的源代码
在Java中,你可以使用`List<Object>`结合`Stream API`将列表中的元素转换成`Map<String, String>`。假设你有一个包含键值对的对象列表,每个对象有一个字符串类型的属性可以作为键,另一个字符串属性可以作为值。以下是步骤:
```java
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
// 假设你有这样一个List<Object>
List<Object> objectList = ... // 包含键值对的实例对象,如Map.Entry<String, String> 或自定义类
// 创建一个新的空Map
Map<String, String> map = new HashMap<>();
// 使用stream流处理
map = objectList.stream()
.filter(entry -> entry instanceof Map.Entry) // 确保元素是Map.Entry
.map(Map.Entry::getKey) // 提取键
.collect(Collectors.toMap(key -> key, Map.Entry::getValue)); // 提取值,并创建新的Map
// 如果你想保持原始键值顺序,可以用Collectors.toConcurrentMap()代替toMap()
阅读全文