如何检查集合是否包含Scala中其他集合中的任何元素?

2022-09-04 05:08:19

Title 说明了一切,找出集合是否包含其他集合的任何元素的最佳做法是什么?

在java中,我会像这样执行它

CollectionUtils.containsAny(a, b)

使用常见的apache集合实用程序,其中变量a / b是集合。

如何在 scala 中实现此行为?还是像上面的CollectionUtils这样的库?

我不想使用common-apache库,因为我必须将scala集合转换为java集合。


答案 1

您可以使用 和 的组合:exists(p: T => Boolean):Booleancontains(elem: A1):Boolean

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

a.exists(b.contains) // true

答案 2

相交

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