Latest web development tutorials

Scala tuple

collezioni Scala collezioni Scala

E liste, tuple è immutabile, ma la lista è diversa da una tupla può contenere diversi tipi di elementi.

Valore tuple è contenuto da un singolo valore nella costituzione parentesi. Ad esempio:

val t = (1, 3.14, "Fred")  

Esempi dei suddetti tre elementi sono definiti nella tupla corrispondente al tipo sono [Int, doppio, java.lang.String].

Inoltre, possiamo anche essere definito utilizzando il metodo di cui sopra:

val t = new Tuple3(1, 3.14, "Fred")

Il tipo di tuple effettivo dipende dal tipo dei suoi elementi, come ad esempio (99, "w3big") è Tuple2 [Int, String]. ( 'U', 'r', "il", 1, 4, "me") è Tuple6 [Char, Char, String, int, int, String].

Attualmente la lunghezza tupla massimo supporto Scala è 22. Per lunghezze superiori è possibile utilizzare le tuple di raccolta o di estensione.

Elementi tuple accesso può essere indice numerico, come una tupla:

val t = (4,3,2,1)

Possiamo utilizzare il primo elemento t._1 accesso, t._2 accedere al secondo elemento, come segue:

object Test {
   def main(args: Array[String]) {
      val t = (4,3,2,1)

      val sum = t._1 + t._2 + t._3 + t._4

      println( "元素之和为: "  + sum )
   }
}

L'attuazione del codice di cui sopra, l'output è:

$ scalac Test.scala 
$ scala Test
元素之和为: 10

tuple iterativo

È possibile utilizzare il metodoTuple.productIterator () per iterare su tutti gli elementi delle tuple di uscita:

object Test {
   def main(args: Array[String]) {
      val t = (4,3,2,1)
      
      t.productIterator.foreach{ i =>println("Value = " + i )}
   }
}

L'attuazione del codice di cui sopra, l'output è:

$ scalac Test.scala 
$ scala Test
Value = 4
Value = 3
Value = 2
Value = 1

Tupla in una stringa

È possibile utilizzareTuple.toString () metodo combina tutti gli elementi della tupla in una stringa, esempi sono i seguenti:

object Test {
   def main(args: Array[String]) {
      val t = new Tuple3(1, "hello", Console)
      
      println("连接后的字符串为: " + t.toString() )
   }
}

L'attuazione del codice di cui sopra, l'output è:

$ scalac Test.scala 
$ scala Test
连接后的字符串为: (1,hello,scala.Console$@4dd8dc3)

elemento di commutazione

È possibile utilizzare il metodo perTuple.swap elemento di scambio della tupla.I seguenti esempi:

object Test {
   def main(args: Array[String]) {
      val t = new Tuple2("www.google.com", "www.w3big.com")
      
      println("交换后的元组: " + t.swap )
   }
}

L'attuazione del codice di cui sopra, l'output è:

$ scalac Test.scala 
$ scala Test
交换后的元组: (www.w3big.com,www.google.com)

collezioni Scala collezioni Scala