list<map> 使用stream过滤其中一个字段为空的数据
时间: 2023-06-14 12:03:22 浏览: 143
在Java 8中将List转换为Map对象方法
假设你要过滤的字段名为"fieldName",可以使用Stream的filter和map方法来实现:
```
List<Map<String, Object>> list = new ArrayList<>();
// 假设 list 已经被初始化
List<Map<String, Object>> filteredList = list.stream()
.filter(map -> map.get("fieldName") != null && !map.get("fieldName").toString().isEmpty())
.collect(Collectors.toList());
```
上述代码中,我们首先使用`stream()`方法将 list 转换成 Stream,然后使用`filter()`方法过滤出满足条件的元素,最后使用`collect()`方法将过滤后的元素收集到一个新的 List 中。在过滤时,我们使用了 Java 8 新增的 Lambda 表达式和 Stream API。其中,`!map.get("fieldName").toString().isEmpty()`用于判断字段是否为空。
阅读全文