Les Arrays ou tableaux
Découvrez comment stocker, trier et accéder à vos données avec les tableaux..
Les tableaux (Arrays) en Swift sont des structures de données utilisées pour stocker des collections ordonnées d'éléments du même type. Ils sont l'un des types de collection les plus utilisés et offrent un moyen flexible de stocker, modifier et manipuler des éléments.
Déclaration et Initialisation d'un Tableau
En Swift, vous pouvez déclarer un tableau en spécifiant le type des éléments qu'il contient, ou bien en laissant Swift inférer le type automatiquement.
Exemple de déclaration vide :
var numbers: [Int] = [] // Tableau vide d'entiers
Ou bien, Swift peut inférer le type :
var names = [String]() // Tableau vide de chaînes de caractères
Exemple avec des valeurs initiales :
var fruits = ["Apple", "Banana", "Orange"] // Inférence de type [String]
Accéder aux Éléments d'un Tableau
Les éléments d'un tableau sont indexés, avec le premier élément ayant l'indice 0. Vous pouvez accéder à un élément en utilisant son indice entre crochets [].
let firstFruit = fruits[0] // "Apple"
Pour accéder en toute sécurité aux éléments sans risque de sortie de la limite, vous pouvez utiliser l'optionnelle :
if let fruit = fruits.first {
print(fruit) // "Apple"
}
Ajouter et Modifier des Éléments
Ajouter un élément à la fin du tableau :
fruits.append("Grapes") // Ajoute "Grapes" à la fin du tableau
Insérer un élément à un indice spécifique :
fruits.insert("Strawberry", at: 1) // Insère "Strawberry" à l'indice 1
Modifier un élément :
fruits[0] = "Pineapple" // Remplace "Apple" par "Pineapple"
Supprimer des Éléments
Supprimer un élément à un indice donné :
fruits.remove(at: 2) // Supprime "Orange"
Supprimer le dernier élément :
fruits.removeLast() // Supprime "Grapes"
Supprimer tous les éléments :
fruits.removeAll() // Supprime tous les éléments, le tableau devient vide
Propriétés et Méthodes Utiles
count : Retourne le nombre d'éléments dans le tableau.
print(fruits.count) // Affiche le nombre d'éléments
isEmpty : Vérifie si le tableau est vide.
if fruits.isEmpty {
print("Le tableau est vide")
}
first et last : Accède au premier ou au dernier élément.
if let firstFruit = fruits.first {
print(firstFruit) // Affiche le premier élément
}
Itération sur un Tableau
Vous pouvez parcourir un tableau à l'aide de boucles comme for-in ou la méthode forEach.
Exemple avec for-in :
for fruit in fruits {
print(fruit)
}
Exemple avec forEach :
fruits.forEach { fruit in
print(fruit)
}
Manipulation Avancée
Filtrer les éléments : Vous pouvez utiliser la méthode filter pour créer un nouveau tableau contenant uniquement les éléments qui satisfont à une condition.
let longNames = fruits.filter { $0.count > 5 }
print(longNames) // Affiche les fruits dont le nom a plus de 5 caractères
Mapper les éléments : La méthode map vous permet de transformer les éléments d'un tableau en appliquant une fonction.
let uppercasedFruits = fruits.map { $0.uppercased() }
print(uppercasedFruits) // Affiche les noms de fruits en majuscules
Réduire les éléments : La méthode reduce combine tous les éléments en un seul en appliquant une fonction de réduction.
let totalCharacters = fruits.reduce(0) { $0 + $1.count }
print(totalCharacters) // Affiche le nombre total de caractères
Tableaux Immutables
Si vous déclarez un tableau avec let, il devient immuable, ce qui signifie que vous ne pouvez plus ajouter, supprimer ou modifier ses éléments.
let immutableFruits = ["Apple", "Banana"]
// immutableFruits.append("Grapes") // Erreur : Impossible de modifier un tableau immuable
Tableaux Multidimensionnels
Swift permet également de créer des tableaux multidimensionnels, c'est-à-dire des tableaux contenant d'autres tableaux.
let matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
print(matrix[0][1]) // Affiche 2
Tableaux de Type Optionnel
Les tableaux peuvent contenir des valeurs optionnelles, ce qui permet d'avoir des éléments qui peuvent être absents.
var optionalNumbers: [Int?] = [1, nil, 3]
print(optionalNumbers[1]) // Affiche : nil