java8优雅去重
字符串集合去重
List<String> distinctElements = list.stream().distinct().collect(Collectors.toList());
根据对象属性去重
public static <T> Predicate<T> distinctByKey(Function<? super T, Object> keyExtractor) { Map<Object, Boolean> map = new ConcurrentHashMap<>(); return t -> map.putIfAbsent(keyExtractor.apply(t), Boolean.TRUE) == null; } //使用举例 persons.stream().filter(distinctByKey(Person::getName))
善于将复杂问题简单化
浙公网安备 33010602011771号