포스트

Collector

Collector

collect()와 Collectors

▸ **collect()** 는 Collector를 매개변수로 하는 스트림의 최종연산

▸ **Collector** 는 collect()에 필요한 메서드를 정의해 높은 인터페이스

▸ **Collectors** 는 다양한 기능의 컬렉터(Collector를 구현한 클래스)를 제공



1
2
3
4
5
6
7
8
9
List<String> names = stuStream.map(Student::getName)            // Stream<Student> → Stream<String>
                              .collect(Collectors.toList());    // Stream<String> → List<String>

ArrayList<String> list = naems.stream()
                              .collect(Collectors.toCollection(ArrayList::new));

// toMap(key값, value값)
Map<String, Person> map = personStream.collect(Collectors.toMap(p -> p.getRegId(), p -> p);


이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.