首页 > 解决方案 > 在Scala中匹配两个数组

问题描述

我在 Scala 中有以下两个数组:

val array1 = Array("Football","Tennis","Tennis","Golf","Cricket","BasketBall","Golf")

val array2 = Array("Golf","Tennis","Formula1","Rugby")

我想返回在两个数组中匹配的不同单词。因此,当“网球”和“高尔夫”出现两次时,我们会将它们算作一个。我相信你会array1.distinct从一开始就做。但是,我想知道,如何将其放入 Scala 函数中?

标签: scalafunctionloops

解决方案


这是显而易见的解决方案:

(array1.toSet intersect array2.toSet).toArray

然而Array,它不是一个完整的 Scala 类型,因此更好地使用VectorList取决于您打算如何处理数据。Scala 集合具有更丰富的方法集并且互操作性更好。


推荐阅读