Scala如何检查一个List是否包含另一个List中元素的切片?

3
A : List[String] 
B : List[String]

我想知道列表B中的任何元素是否是列表A中任何元素的切片。
最快的检查方法是什么?
2个回答

8
我认为最简洁的方法是:ListA.exists { ListB.contains }。

6
最快是面向谁的?你还是CPU?
scala> val a = List("abc","def","ghi") ; val b = List("xy", "yz", "ef")
a: List[String] = List(abc, def, ghi)
b: List[String] = List(xy, yz, ef)

scala> b exists (s => a exists (_ contains s))
res0: Boolean = true

scala> val a = List("abc","def","ghi") ; val b = List("xy", "yz")
a: List[String] = List(abc, def, ghi)
b: List[String] = List(xy, yz)

scala> b exists (s => a exists (_ contains s))
res1: Boolean = false

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接