数组:
定义数组:
var s = new Array[Int](10)
即创建一个Int类型的长度为10的数组,可以不写new和类型,如:
var s = Array("tom","jerry")
s(0) //注意下标用的是小括号,因为中括号用来表示数组类型了
可变数组 ArrayBuffer:
Array是定长数组,而ArrayBuffer是可变数组。ArrayBuffer对应于Java中的ArrayList。
scala> import scala.collection.mutable.ArrayBuffer
scala> val ab=ArrayBuffer[Int]()
scala> ab += (2,3,4,5)
scala> ab
res6: scala.collection.mutable.ArrayBuffer[Int] = ArrayBuffer(2, 3, 4, 5)
foreach打印:
scala> ab.foreach(println)
array和buffer互相转换:
scala> val a1=ab.toArray
scala> val buffer=a1.toBuffer
- +=表示在ArrayBuffer尾部添加元素,尾部添加多个元素时用括号包起来
- ++=表示追加任何集合
Array.fill()() 方法:
scala> val active = Array.fill(5)(10)
active: Array[Int] = Array(10, 10, 10, 10, 10)
列表和元组:
Scala 列表类似于数组,它们所有元素的类型都相同,但是它们也有所不同:
列表是不可变的,值一旦被定义了就不能改变
val fruit: List[String] = List("apples", "oranges", "pears")
与列表一样,元组也是不可变的,但与列表不同,元组可以包含不同类型的元素。
即列表应该是List[Int]或List[String]的样子,元组可以同时拥有Int和String。
val pa = (40,"Foo")