一个list<map<String,string>>对象 和一个List实体类对象 某个字段相同的一条数据取出来
时间: 2024-05-01 18:17:47 浏览: 91
可以使用Java 8的Stream API和Lambda表达式来实现。以下是Java代码示例:
假设List实体类对象中的字段名称为“fieldName”,需要查找的值为“fieldValue”。
```
List<Map<String, String>> listMap = new ArrayList<>(); // 初始化list<map<String,string>>对象
List<MyEntityClass> listEntity = new ArrayList<>(); // 初始化List实体类对象
// 使用Stream API过滤出符合条件的元素,findFirst获取第一个符合条件的元素
Optional<MyEntityClass> result = listEntity.stream().filter(e -> e.getFieldName().equals(fieldValue)).findFirst();
if (result.isPresent()) {
MyEntityClass matchedEntity = result.get();
// 遍历list<map<String,string>>对象,查找符合条件的Map
Map<String, String> matchedMap = null;
for (Map<String, String> map : listMap) {
if (map.containsKey("fieldName") && map.get("fieldName").equals(matchedEntity.getFieldName())) {
matchedMap = map;
break;
}
}
// 打印符合条件的Map
System.out.println(matchedMap);
}
```
阅读全文