Руководство по Scala. Коллекции. Кортеж.

В данной статье мы рассмотрим кортежи (Tuples) в Scala. Кортеж – это структура данных, которая объединяет определённое количество элементов одного или нескольких типов.

Для создания кортежа используется запись следующего вида:


val имя_коллекции = ("Some String", 100500, "#FFFFFF");

Для понимания того, как это работает на практике, рассмотрим простой пример:


package net.proselyte.scalatutorial.collections

/**
  * Simple Scala class that demonstrates Tuples in Scala.
  *
  * @author Eugene Suleimanov
  */

object TupleDemo {
  def main(args: Array[String]) {
    val simpleTuple = ("String", 100500, "#FFFFFF");

    println("simpleTuple: ")
    simpleTuple.productIterator.foreach { element => println("Element: " + element) };

    val integerTuple = (1, 2, 3);

    val integerTupleSum = integerTuple._1 + integerTuple._2 + integerTuple._3;

    println("integerTuple: " + integerTuple);
    println("integerTupleSum: " + integerTupleSum);

    val stringTuple = new Tuple2("First", "Second");

    println("stringTuple: " + stringTuple);
    println("Swapped integerTuple: " + stringTuple.swap);
  }
}

Результат выполнения данной программы будет следующим:


simpleTuple: 
Element: String
Element: 100500
Element: #FFFFFF
integerTuple: (1,2,3)
integerTupleSum: 6
stringTuple: (First,Second)
Swapped integerTuple: (Second,First)

Process finished with exit code 0

На этом мы заканчиваем обзор кортежей в Scala.