list流操作,filter过滤+保持顺序去重
List<TaskApproveLogVO> list = approveLogVOList.stream() .filter(v-> "同意".equals(v.getApprovalStatusName())) //仅保留同意 .collect(Collectors.toMap( TaskApproveLogVO::getNickName, // 使用 name 作为去重的依据 taskApproveLogVO -> taskApproveLogVO, // 保留整个对象 (existing, replacement) -> existing, // 保留第一次出现的对象 LinkedHashMap::new // 保持顺序 )) .values() .stream() .collect(Collectors.toList());
直接上代码
下班记得打卡