
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, der Variablen country
zugewiesen Tuples, erkennbar, 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.
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.
Bei den übrigen in Swift vorkommenden Datentypen handelt es sich hingegen um Named Types.