Tuples group multiple values into a single compound value. The values within a tuple can be of any type and do not have to be of the same type as each other.
Tuples are created by grouping any amount of values:
let tuple = ("one", 2, "three") // Values are read using index numbers starting at zero print(tuple.0) // one print(tuple.1) // 2 print(tuple.2) // three
Also individual values can be named when the tuple is defined:
let namedTuple = (first: 1, middle: "dos", last: 3) // Values can be read with the named property print(namedTuple.first) // 1 print(namedTuple.middle) // dos // And still with the index number print(namedTuple.2) // 3
They can also be named when being used as a variable and even have the ability to have optional values inside:
var numbers: (optionalFirst: Int?, middle: String, last: Int)? //Later On numbers = (nil, "dos", 3) print(numbers.optionalFirst)// nil print(numbers.middle)//"dos" print(numbers.last)//3