元组的语义含义不等于零

时间:2013-11-01 15:35:38

标签: scala tuples

val tuple = (1,2)  //> tuple  : (Int, Int) = (1,2)
tuple !=0          //> res0: Boolean = true

val tuple1 = (0,0) //> tuple1  : (Int, Int) = (0,0)
tuple1 !=0         //> res1: Boolean = true

我认为上面不应该编译..但确实如此。如果是这样,这是什么意思?在什么情况下,将元组与零进行比较是否有意义? 另外,正如你可以看到,与零相比,非零的元组给出了真实。

1 个答案:

答案 0 :(得分:4)

您可以将任何对象与任何其他对象进行比较。如果它们具有不同的类型(作为元组并且整数零将始终为),则它们将始终不相等。如果要在编译时要求比较的对象是相同的类型,则可以使用scalaz'=/====