스트림 요소를 프레디케이트나 고유 요소만 선택하는 방법을 알아보자!
filter 메서드는 프레디케이트를 인수로 받아서 프레디케이트와 일치하는 모든 요소를 포함하는 스트림을 반환한다.
👉🏾 프레디케이트란?
파라미터로 값을 받아 true나 false를 반환하는 함수
💻 채식 요리만 필터링하기 👇🏾
List<Dish> menu = Dish.getDishes();
List<Dish> vegetarianMenu = menu.stream()
.filter(Dish::isVegetarian) // 채식 요리인지 확인하는 메서드 참조
.collect(Collectors.toList());
출처: Modern Java in Action
distint 메서드는 고유 요소로 이루어진 스트림을 반환한다.
💻 짝수를 선택하고 중복 필터링하기 👇🏾
List<Integer> numbers = Arrays.asList(1, 2, 1, 3, 3, 2, 4);
numbers.stream()
.filter(i -> i % 2 == 0)
.distinct() // 중복 요소를 제거한다.
.forEach(System.out::println);
[모던 자바 인 액션] 스트림 takeWhile( ), dropWhile( ), limit( ), skip( )로 슬라이싱하기 (2) | 2022.06.30 |
---|---|
[모던 자바 인 액션] 스트림의 중간연산과 최종연산 특징과 사용법 (0) | 2022.06.28 |
[모던 자바 인 액션] 컬렉션 vs 스트림 (Collection vs Stream) (0) | 2022.06.26 |
[모던 자바 인 액션] 🏞 스트림? 그게 뭐야? 도대체 왜 사용하는거야? (0) | 2022.06.19 |
댓글 영역