java List<Map<String, Object>> lambda表达式 查询
时间: 2023-10-14 08:09:30 浏览: 153
使用Lambda表达式查找指定字符
Lambda表达式可以用于Java 8中的List<Map<String, Object>>查询中。具体实现步骤如下:
1. 导入必要的包:
```
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
```
2. 在List<Map<String, Object>>中使用Lambda表达式进行查询。
例如,假设我们有如下的List<Map<String, Object>>:
```
List<Map<String, Object>> list = new ArrayList<>();
Map<String, Object> map1 = new HashMap<>();
map1.put("name", "Alice");
map1.put("age", 20);
Map<String, Object> map2 = new HashMap<>();
map2.put("name", "Bob");
map2.put("age", 25);
list.add(map1);
list.add(map2);
```
我们想要查询年龄大于等于22的元素,可以使用Lambda表达式如下:
```
List<Map<String, Object>> result = list.stream()
.filter(m -> (int)m.get("age") >= 22)
.collect(Collectors.toList());
```
这里使用了filter()方法来过滤元素,只保留年龄大于等于22的元素,然后使用collect()方法将结果收集到一个新的List中。
最终的result结果为:
```
[{name=Bob, age=25}]
```
说明查询结果只包含年龄大于等于22的元素。
阅读全文