2016-12-05 4 views
3

저는 Java 8 Lambda에 익숙하지 않기 때문에 올바른 용어에 익숙하지 않을 수도 있습니다. 올바른 방향으로 나를 가리 키시고 제 질문에 필요한 변경을 할 것입니다. 그래서 여기에 있습니다 :Java 8 람다 스트림 함수에 인수를 전달하는 방법은 무엇입니까?

많은 조작을 수행하는 자바 람다 함수를 작성했지만 단 하나의 비트로 고민하고 있습니다.

코드 :

이 괜찮 이상 사용되는 모든 기능에 대한 지금
final List<JsonNode> curatedArticles = chubRelatedVideoArticles.stream() 
      .filter(this::isValidRelatedVideoArticle) 
      .filter(this::dedupeOGArticle) 
      .map(this::convertChubRelatedVideosIntoMcsRelatedVideos) 
      .collect(Collectors.toList()); 

이 PARAM을 통과하지 않도록, 예를 들어, 그것이 "this"를 사용함에 따라. 그래서 함수 서명은 다음과 같습니다 이제

private boolean isValidRelatedVideoArticle(final ChubRelatedVideoArticle article) 

, 나는뿐만 아니라 "최종 ChubRelatedVideoArticle 문서"와 함께 dedupeOGArticle에 문자열을 전달하고 싶습니다.

미리 감사드립니다.

답변

8

사용 람다 :

.filter(article -> this.dedupeOGArticle(article, "some string")) 
+0

이 일이, 답변으로 표시합니다, 정말 감사합니다 (일단 내가 허용하고있다). – GauravPandey

관련 문제