Arrays wird jeder kennen, aber mit Tuples (deutsch: Tupel) kommt man — als Anfänger — wohl eher selten in Berührung. Betrachten wir als Einstieg in dieses Thema zunächst einige Beispiele:
let numbers = (5, 24, 17)
let towns = ("Madrid", "Palermo")
let country = (name: "Spain", population: 46733038)
Die Werte werden — durch Kommata getrennt — von runden Klammern umschlossen. Wie anhand des Tuples, welches der Variable country
zugewiesen wurde, erkennbar ist, können die Werte auch benannt sein (hier: name
und population
).
Anhand des country
-Tuples zeigt sich auch der Unterschied zum Array: Die Elemente eines Tuples können unterschiedlichen Typs sein (hier: String und Integer).
Die Ausgabe der Werte mit print()
sieht nun folgendermaßen aus:
print(numbers.0) // -> 5
print(numbers.1) // -> 24
print(towns.0) // -> Madrid
print(country.name) // -> Spain
Auf die Werte kann also über den Index oder die Bezeichnung zugegriffen werden, wobei der erste Wert den Index 0
hat, der zweit den Index 1
, usw.
Die Werte eines Tuples können unterschiedlichen Variablen zugewiesen werden:
let (a, b) = towns
print(a) // -> Madrid
print(b) // -> Palermo
Es ist auch möglich, Tuples miteinander zu vergleichen:
(5, 24, 17) == (5, 24, 17) // -> true
Abschließend noch der Hinweis, dass es sich bei Tuples um Compound Types handelt, also um Typen ohne Namen. Hierzu zählen übrigens auch Closures.
Zuletzt aktualisiert am 30. Mai 2021