List<XXXDO> list = this.baseMapper.listXXX(ids);
//list 根据对象属性 过滤
List<XXXDO> addList = list.stream().filter(s -> "XX".equals(s.getId)).collect(Collectors.toList());
// 获取newIds 并去null
List<Long> newIds = list.stream().map(XXX::getId).filter(Objects::nonNull).collect(Collectors.toList());
//获取某一个属性的 list
List<String> strList= list.stream().map(XXXDO::getId).collect(Collectors.toList());
/**
* List -> Map
* 需要注意的是:
* toMap 如果集合对象有重复的key,会报错Duplicate key ....
* XXX1,XXX2的id都为1。
* 可以用 (k1,k2)->k1 来设置,如果有重复的key,则保留key1,舍弃key2
*/
Map<Integer, XXX> appleMap = appleList.stream().collect(Collectors.toMap(XXX::getId, o -> o,(k1,k2)->k1));
List stream 过滤
最新推荐文章于 2025-03-12 09:51:13 发布