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());

  直接上代码

posted @ 2024-10-09 08:55  了悟  阅读(10)  评论(0编辑  收藏  举报