Le Tuple est un groupe de multiples valeurs réunies dans une valeur unique. Les valeurs à l’intérieur du Tuple peuvent être de n’importe quel type et ne sont pas nécessairement les mêmes. Ces valeurs sont définies entre parenthèses et séparées par une virgule.

Vous avez peut être déjà vu des erreurs http du genre 404 page not found. Ce message est issu d’un Tuple qui regroupe un code d’état de la page ainsi qu’un message. Créons un tuple pour ceci:

let httpsStatus: (Int, String) = (404, “Page not found”) 

Nous avoir plus de valeurs que ceci. Par exemple, créons une couleur avec rgb et alpha

let color = (0.4, 0.2, 0.75, 1)
//Nous avons ici 4 valeurs, le rouge, le vert, le bleu et l’alpha. 

Nous pouvons aussi assigner des noms à chacun des éléments du tuple

let httpsStatus: (code: Int, error: String) = (404, “Page not found”)
print(httpsStatus.code)
//404
print(httpsStatus.error)
//Page not found
let color = (red: 0.4, green: 0.2, blue: 0.75, alpha: 1)
print(color.red)
//0.4
print(color.green)
//0.2
print(color.blue)
//0.75
print(color.alpha)
//1 

A partir de ces tuples, nous pouvons les décomposer et obtenir des valeurs pour chaque élément.

let rect = (300, 200)
let (width, height) = rect
print(width)
//300
print(height)
//200 

Et même en obtenir une seule. Pour ceci, les valeurs non désirées seront remplacées par un ‘_’

let (widthOnly, _) = rect
print(widthOnly)
//300