• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

예제 코드 질문

22.05.05 00:56 작성 조회수 184

2

javaClasses.stream().anyMatch(oc -> oc.getTitle().contains("Test"));

해당 코드에서 filter 를 사용하지 않고 anyMatch 를 사용하신 이유가 궁금합니다!

 

정확히는 이 둘의 차이를 알고 싶은건데요, anyMatch 의 경우엔 모든 요소를 탐색하지 않는다라는 블로그의 글을 참고하였는데 조금더 정확히 강사님의 의견을 듣고싶습니다.

답변 1

답변을 작성해보세요.

1

말그대로 filter는 스트림에 있는 모든 인스턴스를 한번씩 다 연산하지만 anyMatch는 대응하는 것 중에 아무거나 하나만 찾으면 되니까 스트림에 들어있는 인스턴스 중에서 처음으로 매치 되는걸 찾는다면 그 다음 객체들에 대응해 볼 필요가 없으니 성능적으로 조금 더 장점이 있습니다.