JAVA

리스트 객체 중복 제거

Machine_웅 2021. 10. 8. 11:40
728x90
반응형
  /**
     * @param list 중복이 있는 리스트
     * @param key 중복 여부를 판단하는  키값
     * @param <T> 제네릭 타입
     * @return List
     */
    public <T> List<T> deduplication(ArrayList<T> list, Function<? super T,?> key){
        return list.stream().filter(deduplication(key)).collect(Collectors.toList());
    }

    public <T>Predicate<T> deduplication(Function<? super T,?> key){
        Set<Object> set = ConcurrentHashMap.newKeySet();
        return predicate ->set.add(key.apply(predicate));
    }

 

 

참고 : 

https://sunghs.tistory.com/130

 

[JAVA] Java Object List 중복제거

Java Object List 중복제거 Github 소스 Java8 이상의 Collections에는 Stream API 사용 시 distinct라는 중복 제거 메소드가 있다. Stream API의 distinct 메소드는 Object 의 equals 로 비교하므로 객체 자체가..

sunghs.tistory.com

 

728x90
반응형

'JAVA' 카테고리의 다른 글

2차원 배열 4배수  (0) 2022.12.14
정규식 전화번호 하이픈 넣기  (0) 2021.10.08
문자열에 공백 수  (0) 2020.11.23
암호화 SHA-256  (0) 2020.05.21
JSON 정리  (0) 2019.11.21