반응형
2024.12.18 - [☕ 자바 JAVA/☕ 클래스와 함수 Class & Method] - [JAVA][Stream]collect()와 Collectors
partitioningBy() 와 groupingBy()
- 스트림을 분할하는 메서드는 두가지가 있습니다.
- Collectors.partitioningBy() : 스트림을 2분할한다.
- Collectors.groupingBy() : 스트림을 n분할한다.
Collectors.partitioningBy()
: 스트림을 2분할한다.
1. 반환타입이 List인 partitioningBy(기준)
🌟 partitioningBy(매개변수)는 반드시 boolean이 반환되어야 한다.
2. 반환타입을 지정할 경우 partitioningBy(기준, 지정한 반환타입)
3. Optional과 Comparator사용해보기
코드가 너무 길어져서 import static을 사용해 줄여볼게요
4. 다중 분할
실습
Collectors.groupingBy()
: 스트림을 n분할한다.
1. Map<T, List<T>>로 반환받을 경우, stream.collect(Collectors.groupingBy(기준, List))
🌟 위 코드에서 toList()는 디폴트값이라 생략가능
2. 다중 그룹화
3. Collectors.mapping을 사용해 다중 그룹화하기
4. Collectors.collectingAndThen(maxBy(Comparator~~~)) 사용해보기
5. 기준 2개를 합쳐서 문자열로 만들어 사용하기
드디어...모든 영상을 다 보았습니다.😭감격...
정말 귀하고 좋은 영상을 무료로 올려주신 자바의 정석 저자 남궁성 선생님께 감사인사 올립니다.
Comparator를 보다 보니 이전부터 궁금했던 스트림까지 모두 보게되었네요.
오래 걸렸지만 미래의 저와 공부하는 다른 분들에게 도움이 되지 않을까 싶습니다.
연습하면서 느낀건데 경지에 오른 개발자는 AI보다 더 효율좋은 코드를 만들더군요.
저도 그런 개발자가 되고자 노력하겠습니다.
다음 공부도 화이팅!
반응형
'☕ JAVA > ☕ Class & Method' 카테고리의 다른 글
[JAVA][Stream]collect()와 Collectors (0) | 2024.12.18 |
---|---|
[JAVA][Stream]최종 연산 (0) | 2024.12.17 |
[JAVA]Optional<T> (0) | 2024.12.17 |
[JAVA][Stream]중간 연산-map() peek() flatMap() (1) | 2024.12.16 |
[JAVA][Stream]중간 연산-filter() distinct() skip() limit() sorted() (0) | 2024.12.16 |