2016-06-17 6 views
5

タイトルには、コレクションに他のコレクションの要素が含まれているかどうかを調べるための最良の方法は何ですか?コレクションにScalaの他のコレクションの要素が含まれているかどうかを確認するには?

Javaでは、私は、一般的なApacheのコレクションutilsの、変数a/bがコレクションされている使用して、この

CollectionUtils.containsAny(a, b) 

のようにそれを実行します。

この動作をscalaで実装する方法は?または上記のCollectionUtilsのようなライブラリがありますか?

スカラコレクションをJavaコレクションに変換する必要があるため、common-apacheライブラリを使用したくありません。

+1

はScalaのコレクションとJavaの違いはありますか? –

+0

@RobertMoskalはい。実際、scalaには2つの完全に分離したコレクション階層があります。 – javadba

答えて

13

あなたはexistscontainsの組み合わせを使用することができます。

val a = List(1,2,3,4,5,6,7) 
val b = List(11,22,33,44,55,6) 

a.exists(b.contains) // true 
7

交差

val a = Seq(1,2,3) ; val b = Seq(2,4,5) 
a.intersect(b) 
res0: Seq[Int] = List(2) 

// to include the test: 
a.intersect(b).nonEmpty // credit @Lukasz 
+0

なぜダウンボートが得られたのか分かりません。それは明らかな答えです。 –

+1

'a.intersect(b).nonEmpty'としてきれいに見えるかもしれません。 –

+0

明らかな答えはもう一つ、@ TheArchetypalPaulです。とにかく、私はdownvoteしなかった、ちょうど投票しなかった。 – pedrofurla

関連する問題