2016-04-11 12 views
-4

array1の項目が配列2に存在する場合、簡単なチェック方法がありますか?Java8 - 配列の項目が他の配列に存在する

List<String> array1 = new ArrayList<>(); 
array1.add("Hello"); 
array1.add("Test"); 

List<String> array2 = new ArrayList<>(); 
array2.add("Test"); 
array2.add("Item"); 

したがって、「テスト」は配列1と配列2にあるため、答えは真でなければなりません。 簡単な方法はありますか?

+3

はい。コードを書くことによって。 – Maroun

答えて

0

あなたは、単純な機能的なスタイルを使用できます。collection1collection2に共通の要素が存在しない場合は

List<String> result = array1.stream() 
    .filter(array2::contains) 
    .collect(Collectors.roList()); 
+0

これはコンパイルされません... – Tunaki

2

Collections.disjoint(collection1, collection2)戻りtrueを。

あなたのケースでは、boolean haveElementsInCommon = !Collections.disjoint(array1, array2)は、少なくとも私が質問を理解するので、仕事をします。

詳細はCollections.disjoint() docsをご確認ください。

関連する問題