基本问题,我很惊讶 Scala 似乎支持容器类中的元素相等。例如:
Seq(1,2,3)==List(1,2,3) //true
Vector(1,2,3) ==List(1,2,3) //true
尽管正如我所怀疑的那样,Array 甚至无法对抗自己。
Array(1,2,3) == Array(1,2,3) //false
可变到不可变似乎有效:
scala.collection.mutable.MutableList(1,2,3)==List(1,2,3)
无论如何,我可以对此做出什么样的假设?这是测试内容平等的安全方法还是需要避免一些警告?虽然这看起来很直观,但我想知道这些简单示例是否存在一些问题。如果你有一个列表列表,Scala 会进行深度比较扫描吗?
谢谢!