据我所知,没有任何内置功能,但是您可以使用pimp-my-library模式来相当容易地完成此操作。这样:
class ObjectArrayTools[T <: AnyRef](a: Array[T]) {
def binarySearch(key: T) = {
java.util.Arrays.binarySearch(a.asInstanceOf[Array[AnyRef]],key)
}
}
implicit def anyrefarray_tools[T <: AnyRef](a: Array[T]) = new ObjectArrayTools(a)
scala> Array("a","fish","is","some","thing").binarySearch("some")
res26: Int = 3
scala> Array("a","fish","is","some","thing").binarySearch("bye")
res28: Int = -2
如果还需要其他对象方法,也可以将它们添加到同一类中。java.util.Arrays
总的来说,我发现习惯于总是导入你最喜欢的Scala实用程序的集合是个好主意。添加这样的功能非常容易,您最好在一般情况下执行此操作,而不是继续键入 ,并且只需一点努力,您就可以使自己的工作效率大大提高。.asInstanceOf[Array[AnyRef]]