import java.util.List;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import java.util.function.Function;
import java.util.function.Predicate;
import java.util.stream.Collectors;
public class DeduplicationUtils {
public static <T> List<T> deduplication(final List<T> list, Function<? super T,?> key){
return list.stream().filter(deduplication(key))
.collect(Collectors.toList());
}
private static <T> Predicate<T> deduplication(Function<? super T,?> key){
final Set<Object> set = ConcurrentHashMap.newKeySet();
return predicate -> set.add(key.apply(predicate));
}
}
'실습기록' 카테고리의 다른 글
7월 17일 project - main css (0) | 2023.07.18 |
---|---|
7월 15일 project - 데이터베이스 더미데이터 사이트 모음 (0) | 2023.07.16 |
7월 13일 project - 별점 후기 출력 (0) | 2023.07.15 |
7월 12일 project - 찜/찜 취소 기능 구현 (0) | 2023.07.12 |
7월 11일 project - 하트 이미지 변경 토글 (0) | 2023.07.11 |