Vector 是一个容器,可以保存其他数据对象,也称为集合。 Vector 是Scala标准包的一部分,我们可以直接使用,不需要导包。我们以实例来了解 Vector 容器。
创建 Vector
无需使用new关键字就可以创建 Vector 容器实例。创建实例的同时我们可以放入元素:
//1. 创建 Vector 对象 var v1 = Vector(1, 2, 3);
Vector 索引下标
Vector 的元素索引是从0开始的, 使用 圆括号将索引号括起来可以获得指定元素:
//2. 索引 Vector println(v1(0))
Vector 的遍历
Vector 是可以遍历的,我们可以使用 for循环遍历查看Vector实例的内容:
//3. 遍历 Vector for( ele <- v1 ){ print(ele ” “) }
倒转 Vector
可以使用 reverse 方法将整个Vector 倒转过来:
//4. 倒转 Vector var v2 = Vector(1.1, 2.2, 3.3, 4.4) for( ele <- v2.reverse ){ print(ele ” “) }
Vector 排序
Vector 容器类提供了一个 将元素排序的方法 sorted():
var v3 = Vector(10, 33, 27, 14, 35, 19, 42, 44) for( ele <- v3.sorted ){ print(ele ” “) }
Vector 几个重要的方法实例程序如下,更多方法可以参看 Scala doc。
代码语言:javascript复制package com.byron4j.scala.basic
/**
* Vector 容器使用介绍
*/
object VectorDemo {
def main(args: Array[String]): Unit = {
//1. 创建 Vector 对象
var v1 = Vector(1, 2, 3);
println(v1)
//2. 索引 Vector
println(v1(0))
//3. 遍历 Vector
for( ele <- v1 ){
print(ele " ")
}
println
//4. 倒转 Vector
var v2 = Vector(1.1, 2.2, 3.3, 4.4)
for( ele <- v2.reverse ){
print(ele " ")
}
println
// 使用 reverse 之后只是产生了一个新的Vector, 原 Vector 并不会改变
for( ele <- v2 ){
print(ele " ")
}
println
//5. 第一个元素
println("v2.head = " v2.head)
//6. 除首元素之外的所有元素
println("v2.tail = " v2.tail)
//7. 排序
var v3 = Vector(10, 33, 27, 14, 35, 19, 42, 44)
for( ele <- v3.sorted ){
print(ele " ")
}
println
}
}
输出结果如下:
Vector(1, 2, 3) 1 1 2 3 4.4 3.3 2.2 1.1 1.1 2.2 3.3 4.4 v2.head = 1.1 v2.tail = Vector(2.2, 3.3, 4.4) 10 14 19 27 33 35 42 44