Itérer sur les éléments
Fait partie de la section Fondamentaux du Journey Swift de Coddy — leçon 69 sur 86.
Maintenant que vous savez comment créer et modifier des tableaux, explorons comment traiter chaque élément un par un. La boucle for-in rend cela incroyablement simple.
Lorsque vous utilisez une boucle for-in avec un tableau, Swift vous donne automatiquement chaque élément dans l'ordre :
let fruits = ["Apple", "Banana", "Cherry"]
for fruit in fruits {
print(fruit)
}
// Apple
// Banana
// CherryLa variable fruit prend chaque valeur du tableau lors de chaque itération. Vous pouvez nommer cette variable comme bon vous semble, selon ce qui est logique pour vos données.
Ce modèle est parfait pour effectuer des opérations sur chaque élément, comme le calcul d'un total :
let prices = [9.99, 14.50, 3.25]
var total = 0.0
for price in prices {
total += price
}
print(total) // 27.74Vous pouvez également utiliser la boucle pour construire de nouveaux tableaux à partir de tableaux existants :
let numbers = [1, 2, 3, 4]
var doubled = [Int]()
for number in numbers {
doubled.append(number * 2)
}
print(doubled) // [2, 4, 6, 8]Itérer sur des tableaux est l'une des opérations les plus courantes en programmation, donc maîtriser ce modèle vous sera très utile.
Défi
FacileÉcrivez une fonction countPositives qui prend numbers et renvoie le nombre d'entiers positifs dans le tableau.
Utilisez une boucle for-in pour parcourir chaque élément et compter combien sont supérieurs à zéro.
Paramètres :
numbers([Int]) : Un tableau d'entiers
Retourne : Le nombre d'entiers positifs (supérieurs à 0) dans le tableau (Int)
Exemple : Si numbers est [-3, 5, 0, 8, -1, 12], la fonction doit retourner 3 (les nombres positifs sont 5, 8 et 12).
Aide-mémoire
Utilisez une boucle for-in pour itérer à travers chaque élément d'un tableau :
let fruits = ["Apple", "Banana", "Cherry"]
for fruit in fruits {
print(fruit)
}
// Apple
// Banana
// CherryLa variable de boucle (fruit dans cet exemple) prend chaque valeur du tableau lors de chaque itération.
Vous pouvez utiliser des boucles for-in pour calculer des totaux :
let prices = [9.99, 14.50, 3.25]
var total = 0.0
for price in prices {
total += price
}
print(total) // 27.74Vous pouvez également construire de nouveaux tableaux en itérant sur des tableaux existants :
let numbers = [1, 2, 3, 4]
var doubled = [Int]()
for number in numbers {
doubled.append(number * 2)
}
print(doubled) // [2, 4, 6, 8]Essayez vous-même
func countPositives(numbers: [Int]) -> Int {
// Écrivez le code ici
}
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
4Opérateurs - Partie 1
Opérateurs arithmétiquesOpérateur ModuloAffectation composéeRécapitulatif - Mathématiques simplesOpérateurs de comparaison7Entrées/Sorties de base
Fonction PrintInterpolation de chaînesSaisie ReadLineConversion de typesRécapitulatif - Jusqu'à 120Récapitulatif - Vrai ou Faux10Fonctions
Déclarer une fonctionParamètres et argumentsValeurs de retourÉtiquettes d'argumentRécapitulatif - Fonction SigmaRécapitulatif - Fonction de validationValeurs par défaut13Itération sur les séquences
Itérer sur les élémentsLa méthode d'énumérationItérer sur les chaînes P1Itérer sur les chaînes P22Variables
Let vs VarAnnotations de typeNombresStringsBooléensConventions de nommageRécapitulatif - Initialiser des variables5Opérateurs, partie 2
Opérateurs logiques, partie 1Opérateurs logiques, partie 2Récapitulatif - Logique simpleOpérateurs logiques, partie 3Opérateur ternaire8Calculateur de partage de facture
Message de bienvenueSaisie des données11FizzBuzz avec une variante
Présentation du jeuLa fonction FizzBuzz3Les Optionnels
Comprendre les optionnelsDéballage avec If LetL'instruction Guard LetOpérateur de fusion nilRécapitulatif - Déballage sécurisé6Prise de décision
L'instruction IfIf - ElseRécapitulatif - Calculatrice simpleL'instruction SwitchSwitch avec des intervalles9Boucles
Boucle For-InBoucle WhileBoucle Repeat-WhileBreakContinueRécapitulatif - FactorielleIntervalles dans les bouclesBoucles imbriquéesRécapitulatif - Entrée dynamique