Stream流Filter
自定义指定字段进行过滤
- 工具类
public class StreamUtils {
/**
* 使用对象指定属性进行预测,返回一个预测器
* @param keyExtractor 对象属性
* @return Predicate
* @param <T> class类
*/
public static <T> Predicate<T> distinctByKey(Function<? super T, ?> keyExtractor) {
Map<Object,Boolean> seen = new ConcurrentHashMap<>();
return t -> seen.putIfAbsent(keyExtractor.apply(t), Boolean.TRUE) == null;
}} - 使用方法
xxxEntity.stream().filter(StreamUtils.distinctByKey(xxxEntity::getXxxx)).tiList();
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Bai's Blog!