Scala基础入门(十一 ) Vector集合容器使用介绍

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。

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


  }

}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55

输出结果如下:

Vector(1, 2, 3) 

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

猜你喜欢

转载自blog.csdn.net/kwame211/article/details/80586052