Edu*_*rdo 12 scala scala-collections
我正在使用一个mutable Buffer,需要找出它有多少元素.
两者size和length方法都是定义的,继承自不同的特征.
是否有任何实际的性能差异,或者它们是否可以被视为完全同义词?
Dan*_*ral 15
它们是同义词,主要是Java决定size收集和lengthfor Array和的结果String.一个将始终根据另一个进行定义,您可以通过查看源代码,scaladoc上提供的链接,轻松查看哪个是哪个.只需找到定义特征,打开源代码,然后搜索def size或def length.
在这种情况下,它们可以被视为同义词.您可能需要注意其他一些情况,例如Array- 虽然长度和大小将始终返回相同的结果,但在Scala 2.10之前的版本中,可能存在用于调用的装箱开销size(由阵列周围的Scala包装提供) ,而length 由底层Java数组提供.
在Scala 2.10中,通过使用提供size方法的值类来消除此开销,因此您可以随意使用您喜欢的任何方法.
| 归档时间: |
|
| 查看次数: |
7772 次 |
| 最近记录: |