Menu
Coddy logo textTech

La méthode d'énumération

Fait partie de la section Fondamentaux du Journey Swift de Coddy — leçon 70 sur 86.

Parfois, lors de l'itération sur un tableau, vous avez besoin de connaître non seulement l'élément, mais aussi sa position. Bien que vous puissiez suivre manuellement l'index avec une variable de compteur, Swift propose une solution plus propre : la méthode enumerated().

Lorsque vous appelez enumerated() sur un tableau, cela retourne une séquence de tuples, où chaque tuple contient l'index et l'élément :

let colors = ["Red", "Green", "Blue"]

for (index, color) in colors.enumerated() {
    print("\(index): \(color)")
}
// 0: Red
// 1: Green
// 2: Blue

Remarquez comment nous décomposons chaque tuple directement dans la boucle en utilisant (index, color). Cela nous donne accès aux deux valeurs sans aucun code supplémentaire.

Ceci est particulièrement utile lorsque vous devez afficher des listes numérotées ou effectuer des opérations qui dépendent de la position d'un élément :

let tasks = ["Wake up", "Exercise", "Eat breakfast"]

for (index, task) in tasks.enumerated() {
    print("Task \(index + 1): \(task)")
}
// Tâche 1 : Wake up
// Tâche 2 : Exercise
// Tâche 3 : Eat breakfast

La méthode enumerated() garde votre code propre et lisible par rapport à la gestion manuelle d'une variable de compteur distincte.

challenge icon

Défi

Facile

Écrivez une fonction formatWithPositions qui prend items et retourne une chaîne formatée affichant chaque élément avec son numéro de position.

Utilisez la méthode enumerated() pour parcourir le tableau et construire une chaîne où chaque élément est préfixé par son numéro de position (commençant à 1).

Logique :

  1. Parcourez le tableau en utilisant enumerated()
  2. Pour chaque élément, créez une chaîne au format "position. item" (en utilisant une numérotation commençant à 1)
  3. Joignez toutes les chaînes formatées avec un caractère de nouvelle ligne (\n)

Paramètres :

  • items ([String]) : Un tableau de chaînes de caractères à formater

Retourne : Une seule chaîne avec chaque élément sur sa propre ligne, préfixé par son numéro de position (String). Format : "1. item1\n2. item2\n3. item3"

Exemple : Si items est ["Apple", "Banana", "Cherry"], la fonction doit retourner :

"1. Apple\n2. Banana\n3. Cherry"

Note : Si le tableau est vide, retournez une chaîne vide "".

Aide-mémoire

La méthode enumerated() retourne une séquence de tuples contenant à la fois l'index et l'élément d'un tableau :

let colors = ["Red", "Green", "Blue"]

for (index, color) in colors.enumerated() {
    print("\(index): \(color)")
}
// 0: Red
// 1: Green
// 2: Blue

Chaque tuple est décomposé directement dans la boucle en utilisant la syntaxe (index, element), offrant un accès à la fois à la position et à la valeur.

Ceci est utile pour créer des listes numérotées en ajoutant 1 à l'index basé sur zéro :

let tasks = ["Wake up", "Exercise", "Eat breakfast"]

for (index, task) in tasks.enumerated() {
    print("Task \(index + 1): \(task)")
}
// Task 1: Wake up
// Task 2: Exercise
// Task 3: Eat breakfast

Essayez vous-même

func formatWithPositions(items: [String]) -> String {
    // Écrivez le code ici
}
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fondamentaux