package com.smartor.common; import java.util.HashSet; import java.util.List; import java.util.Set; import java.util.function.Function; import java.util.stream.Collectors; /** * 去重工具类 */ public class DistinctByProperty { // 创建去重工具方法,根据集合中上属性 public static List distinctByProperty( List list, Function keyExtractor) { Set seen = new HashSet<>(); return list.stream() .filter(item -> seen.add(keyExtractor.apply(item))) .collect(Collectors.toList()); } }