北京手机响应式网站建设设计,电玩网站开发,广州微网站建设市场,九江网站建设优化公司方便在写代码的过程中直接使用#xff0c;好记性不如好文章#xff0c;直接 CV 改了直接用。提高 办#xff08;摸#xff09;公#xff08;鱼#xff09;效#xff08;时#xff09;率#xff08;间#xff09;#xff0c; 不然就直接问 GPT 也不是说不行。
只符合…方便在写代码的过程中直接使用好记性不如好文章直接 CV 改了直接用。提高 办摸公鱼效时率间 不然就直接问 GPT 也不是说不行。
只符合所筛选条件至多一条
CommonArea l common.stream().filter(item -item.getName().equals(aa)).findAny().orElse(null);返回多条记录
ListObject list common.stream().filter(item - item.getName().equals(aa)).collect(Collectors.toList())根据条件判断是否存在
anyMatch只要有一个就会返回 true。
boolean exist userData.userList.stream().anyMatch(u - u.getUserName().equals(user.getUserName()));allMatch所有元素都满足就返回 true。
boolean exist userData.userList.stream().allMatch(u - u.getUserName().equals(user.getUserName()));提取对象 List 中的某一字段生成新的 List
ListString bkMajor list.stream().map(ZsbBkSchool::getBkMajor).collect(Collectors.toList());提取对象 List 中的某几个字段生成新的 List
ListUserVO bkMajor list.stream().map(user - {UserVO vo new UserVO();vo.setUserId(user.getUserId());vo.setUserName(user.getUserName());return vo;
}).collect(Collectors.toList());List 集合转字符串逗号隔开
// 如何把list集合拼接成以逗号分隔的字符串 a,b,c
ListString list Arrays.asList(a, b, c); // 第一种方法可以用stream流
String join list.stream().collect(Collectors.joining(,));
System.out.println(join); // 输出 a,b,c // 第二种方法其实String也有join方法可以实现这个功能
String join String.join(,, list);
System.out.println(join); // 输出 a,b,cList 选取两个字段转 Map
MapInteger, String map list.stream().collect(Collectors.toMap(Entity::getId, Entity::getType));
// 上面的代码可能会报错value 为 null 时
MapInteger, String map list.stream().collect(HashMap::new, (k, v) - k.put(v.getId(), v.getType()),HashMap::putAll);List 选取某一个字段作为keyvalue 为对象转为 Map
// 使用 Lambda 表达式
MapInteger,User userMap userList.stream().collect(Collectors.toMap(User::getId, User - User));// 使用 Function.identity() 简洁写法也是返回对象本身
MapInteger,User userMap userList.stream().collect(Collectors.toMap(User::getId, Function.identity()));// 当 key 冲突的解决办法这里选择第二个 key 覆盖第一个 key
MapInteger,User userMap userList.stream().collect(Collectors.toMap(User::getId, Function.identity(), (key1, key2) - key2));
List 选取某一个字段作为keyvalue 为 JSON 字符串
MapString, String collect userList.stream().collect(Collectors.toMap(User::getOpenId, JSON::toJSONString));List 选去某一个 BigDecimal 字段或其他数值字段进行相加
// 使用Stream的reduce方法将BigDecimal字段的值相加
BigDecimal sum numbers.stream().reduce(BigDecimal.ZERO, BigDecimal::add);// 使用Stream的mapToInt和sum方法对Item对象的price字段进行累加
BigDecimal total items.stream().map(Item::getPrice).reduce(BigDecimal.ZERO, BigDecimal::add);ListInteger 使用 stream 进行去重
ListInteger numbers Arrays.asList(1, 2, 2, 3, 4, 4, 5, 6, 6, 7);ListInteger distinctNumbers numbers.stream().distinct().collect(Collectors.toList());后续将不定期更新 Stream 的骚操作使用如果有其他更好的使用可以告知一下。