Vector

scala.collection.immutable.Vector (API )

Einstieg
Erzeugung
Elementzugriff
Links

Einstieg

Der Vector ist im Scala-Package scala.collection.immutable (API ) definiert und ist eine allgemeine, unveränderliche Datenstruktur zur Aufnahme von Daten ähnlich einer List. Ein Vector zeichnet sich durch einen annähend konstanten Zeitbedarf für Elementzugriff, Elementmodifikation und Operationen zum Anhängen und Voranstellen von Elementen. Eine List hat Ihre Stärken bei Operationen die am Anfang (Head) der List ausgeführt werden. Eingeführt wurde der Vector mit Scala 2.8.

Einen Vector erzeugen

Einen Vector können wir durch Abgabe des Klassennamens gefolgt von den hinzuzufügenden Elementen in Klammern erzeugen. Die Schreibweise Klassenname gefolgt von einer Klammer führt zum Aufruf der zugehörigen apply Methode, welche die Erzeugung des Vector vornimmt.

Im nachfolgenden Beispiel erzeugen wir einen Vector mit Int Elementen. Nach der Erzeugung geben wir alle enthaltenen Elemente auf der Systemausgabe aus.

val myVector = Vector(3,7,4,2)
myVector: scala.collection.immutable.Vector[Int] = Vector(3, 7, 4, 2)

scala> myVector.foreach(println)
3
7
4
2
itmapa.de - X2H V 0.20

Elementzugriff

Nachdem wir nun wissen, wie wir einen Vector erzeugen können, interessiert uns, wie wir wieder an die Elemente kommen. Auslesen können wir ein Element eines Vector mithilfe der apply-Methode. Wie bei apply üblich können wir den syntaktischen Zucker anwenden und den Punkt mit Methodennamen weglassen und den 0-basierten Index direkt in Klammern angeben, was zum Aufruf der apply-Methode führt.

Im nachfolgenden Beispiel erzeugen wir zunächst einen Vector mit 5 Int Elementen. Im Anschluss geben wir das vierte (Index: 3) und das fünfte (Index; 4) Element auf der Systemausgabe aus. Hierzu verwenden wir einmal die apply-Methode explizit und einmal in Form der direkten Angabe des Indizes.

object Test2 {
  def main(args: Array[String]): Unit = {
    val myVector = Vector(1,2,5,3,6)
    println(myVector.apply(3))
    println(myVector(4))
  }
}
itmapa.de - X2H V 0.20

Scala - API: Vector Flagge Großbritanien


Scala - Documentation: Vector
http://www.scala-lang.org/api/current/index.html#scala.collection.immutable.Vector