2017-05-10 13 views
3

私はパラメータとしてList<String> locationsをとるメソッドを持っています。特定の条件に基づいて同じ方法でユーザーリストを作成しています。今私が欲しいのは、この場所にユーザーがいることです。要するに、ユーザの位置が、提供された位置のリストに存在する場合、ユーザは有効である。場所。"contains"を見つけるためのJava 8ラムダ式

これは私の現在のコードです:

primaryList.stream() 
     .filter(some_pattern_matching)[.MATCH THE LOCATION HERE] 
     .map(user -> user.getNames()) 
     .collect(toList()) 

locations.contains(user -> user.getLocation()) OR user -> user.getLocation().isPresentIn(locations) OR持っている場所が1つの以上のストリームに変換してマッチングを行うと言うする方法はありますか?

これは私の現在のコードです:もちろん

.filter(locations.stream().filter(loc -> loc.equalsIgnoreCase(s.getLocation()))) 

コンパイルされません。

+0

あなたのコードのいくつかの最低限の作業例を提供することができましたか? –

+2

*ユーザーの所在地が提供された場所のリストに存在する場合、ユーザーは有効です*:so、 'boolean userIsValid = locations.contains(user.getLocation())'?それはあなたが欲しいものですか?そうでない場合は、引数、戻り値の型、およびjavadocを実装するメソッドを提供してください。 –

答えて

4

あなたはこの意味でください:

.filter(user -> locations.contains(user.getLocation()) 
関連する問題