filter() 메소드란?
Stream 클래스에서 제공하는 filter() 메소드는 Predicate를 인수로 받아서 일치하는 모든 요소를 포함하는 스트림으로 반환한다.
filter() 메소드의 특징
filter() 메소드는 중개 연산(intermediate operation)을 수행하므로 새로운 스트림을 생성한다.
특정 조건을 만족하는 요소로 구성된 새로운 스트림을 생성한다.
filter() 메소드의 매개변수는 함수형 인터페이스인 Predicate이다. 따라서, 람다 표현식도 전달할 수 있다.
filter() 메소드의 매개변수에는 한 개의 매개변수를 가지며, Boolean 타입의 값을 반환하는 람다 표현식 또는 Predicate 타입의 객체가 전달되어야 한다.