Java 8 Stream API: 筛选 List<Map<String, String>> 并提取特定字段
使用Java 8的Stream API可以方便地实现从List<Map<String, String>>中筛选出prod_id等于特定值的Map对象,并提取其中的'acc_num'字段。
以下代码展示了具体的实现方法:
List<String> accNumList = memberList.stream()
.filter(m -> m.get('prod_id').equals(prodId))
.map(m -> m.get('acc_num'))
.collect(Collectors.toList());
代码解释如下:
stream()方法将memberList转换成一个Stream对象。filter()方法过滤出'prod_id'等于prodId的Map对象。map()方法将每个Map对象中的'acc_num'字段提取出来,形成一个新的Stream对象。collect()方法将新的Stream对象转换成一个List对象,即为所需的结果。
需要注意的是,上述代码假设prodId是一个String类型的变量。如果prodId是一个int类型的变量,需要将equals()方法改为==运算符。
使用Stream API可以有效地处理集合数据,提高代码可读性和效率。
原文地址: https://www.cveoy.top/t/topic/nDJr 著作权归作者所有。请勿转载和采集!