Collezioni Scala - Seq

Scala Seq è un tratto per rappresentare sequenze immutabili. Questa struttura fornisce l'accesso basato sull'indice e vari metodi di utilità per trovare gli elementi, le loro occorrenze e le sottosequenze. Un Seq mantiene l'ordine di inserzione.

Dichiarazione delle variabili Seq

La seguente è la sintassi per la dichiarazione di una variabile Seq.

Sintassi

val seq: Seq[Int] = Seq(1, 2, 3, 4, 5)

Qui, seq è dichiarato come un Seq di numeri. Seq fornisce comandi come i seguenti:

Comando

val isPresent = seq.contains(4);
val contains = seq.endsWith(Seq(4,5));
var lastIndexOf = seq.lasIndexOf(5);

Elaborazione Seq

Di seguito è riportato un programma di esempio che mostra come creare, inizializzare ed elaborare Seq -

Esempio

import scala.collection.immutable.Seq
object Demo {
   def main(args: Array[String]) = {
      var seq = Seq(1, 2, 3, 4, 5, 3)
      // Print seq elements
      seq.foreach{(element:Int) => print(element + " ")}
      println()
      println("Seq ends with (5,3): " + seq.endsWith(Seq(5, 3)))
      println("Seq contains 4: " + seq.contains(4))
      println("Last index of 3: " + seq.lastIndexOf(3))
      println("Reversed Seq" + seq.reverse)           
   }
}

Salva il programma sopra in formato Demo.scala. I seguenti comandi vengono utilizzati per compilare ed eseguire questo programma.

Comando

\>scalac Demo.scala
\>scala Demo

Produzione

1 2 3 4 5 3
Seq ends with (5,3): true
Seq contains 4: true
Last index of 3: 5
Reversed SeqList(3, 5, 4, 3, 2, 1)