Latest web development tutorials

Scala tuple

collections Scala collections Scala

Et listes, tuples est immuable, mais la liste est différent d'un tuple peut contenir différents types d'éléments.

Valeur tuple est contenue par une valeur unique dans la constitution entre parenthèses. Par exemple:

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

Des exemples de ces trois éléments ci-dessus sont définis dans le tuple correspondant au type sont [Int, double java.lang.String].

De plus, nous pouvons également être définie en utilisant la méthode ci-dessus:

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

Le type de tuple réelle dépend du type de ses éléments, tels que (99, "w3big") est Tuple2 [Int, String]. ( 'U', 'r', "le", 1, 4, «moi») est Tuple6 [Char, Char, String, Int, Int, String].

Actuellement, la durée de tuple soutien maximal Scala est 22. Pour de plus grandes longueurs, vous pouvez utiliser la collection ou d'extension tuples.

éléments d'accès tuple peut être indice numérique, comme un tuple:

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

Nous pouvons utiliser le premier élément t._1 accès, t._2 accéder au deuxième élément, comme suit:

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 )
   }
}

Mise en œuvre du code ci-dessus, la sortie est:

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

tuple itératif

Vous pouvez utiliser la méthodeTuple.productIterator () pour itérer sur tous les éléments des tuples de sortie:

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

Mise en œuvre du code ci-dessus, la sortie est:

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

Tuple dans une chaîne

Vous pouvez utiliserTuple.toString () méthode combine tous les éléments du tuple dans une chaîne, des exemples sont les suivants:

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

Mise en œuvre du code ci-dessus, la sortie est:

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

Elément de commutation

Vous pouvez utiliser la méthode pourTuple.swap élément d'échange du tuple.Les exemples qui suivent:

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

Mise en œuvre du code ci-dessus, la sortie est:

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

collections Scala collections Scala