Rex*_*err 20
Scala 2.7尝试向Java []阵列添加功能,并遇到了有问题的极端情况.Scala 2.8声明了这Array[T]一点T[],但它提供了包装器和等价物.
在2.8中尝试以下内容(编辑/注释:从RC3开始,GenericArray将ArraySeq-thanks指向反义词以指出这一点):
import scala.collection.mutable.{GenericArray=>GArray, WrappedArray=>WArray}
scala> GArray(0,1,2) == GArray(0,1,2)
res0: Boolean = true
scala> (Array(0,1,2):WArray[Int]) == (Array(0,1,2):WArray[Int])
res1: Boolean = true
Run Code Online (Sandbox Code Playgroud)
GenericArray行为就像Array,除了添加了所有Scala集合的好东西. WrappedArray包装Java []数组; 上面,我给它一个普通的数组(比调用隐式转换函数更容易),然后比较包装的数组.这些包装器虽然由[]数组支持,但也为您提供了所有的收藏品.
但Scala的String也只是一个Java String,但Scala覆盖等于比较自然相等.
Scala不会覆盖那里的任何东西; java.lang.String具有依赖于值的实现equals()(与许多其他Java类一样,但与数组不同).
| 归档时间: |
|
| 查看次数: |
5054 次 |
| 最近记录: |