如何检查Scala中所有列表元素是否都不同?

时间:2019-11-07 14:21:27

标签: scala functional-programming

我有一个List[(Int, Int)],我想检查列表中的所有元素是否不同

如何在Scala中实现这一目标?

1 个答案:

答案 0 :(得分:3)

scala> val xs = List((1, 2), (1, 3), (1, 2))
xs: List[(Int, Int)] = List((1,2), (1,3), (1,2))

scala> xs.distinct.lengthCompare(xs) == 0
res0: Boolean = false

P.S。但是,明智地使用Scala集合中的HashMap / HashSet可以避免在DoS / DoW攻击下通过直接或间接地通过在后台使用它们的Scala集合方法直接或间接利用hash collision vulnerabilities来利用不受信任的输入上的安全漏洞。 :toMapkeysdistinctgroupBy等。