scala中arraybuffer 与array有啥区别
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了scala中arraybuffer 与array有啥区别相关的知识,希望对你有一定的参考价值。
差异比较明显 Array是定长的,按照文档说明为: Array[T] is Scala's representation for Java's T[]. Array存在下标越界访问的风险 而List是变长的 从效率上看,按下标访问Array快,List慢。 在头部插入,Array慢,List快。 参考技术A scala中actor是简单版本的actor实现akka是另一个独立的actor, 比scala自带的强大的多, 当然也是scala写的4scala数组
1、Array
2、ArrayBuffer
3、遍历Array和ArrayBuffer
4、数组常见操作
1、 Array
Scala中,array代表的含义与java类似,也是长度不可改变的数组。由于scala与java都是运行在jvm中,双方可以相互调用,scala数组的底层实现实际上是java数组。
2、ArrayBuffer
Scala中,如果需要长度可变的集合类,可以使用ArrayBuffer。使用前需要导入 scala.collection.mutable.ArrayBuffer。
创建一个空的ArrayBuffer:val b=ArrayBuffer[Int]()
添加一个元素,使用+= b+=1 b+=(2,3,4,5)
添加其他集合中的所有元素 b++=Array(6,7,8)
从尾部截断指定个数的元素 b.trimEnd(5)
指定位置插入元素 b.insert(0,9,10)
移除指定位置的元素b.remove(1,3)
Array和ArrayBuffer相互转换 b.toArray a.toBuffer
3、遍历Array和ArrayBuffer
使用for循环和until遍历
跳跃遍历
尾部遍历
使用“增强for循环”遍历
4、数组常见操作
数组元素求和 a.sum
获取最大值 a.max
对数组排序 scala.util.Sorting.quickSort(a)
获取数组中所有元素内容 a.mkString a.mkString(“,”) a.mkString(“(”,”,”,”)”)
toString函数 a.toString
以上是关于scala中arraybuffer 与array有啥区别的主要内容,如果未能解决你的问题,请参考以下文章