Modifier des tableaux
Fait partie de la section Fondamentaux du Journey Swift de Coddy — leçon 64 sur 86.
Les tableaux deviennent vraiment utiles lorsque vous pouvez modifier leur contenu. Pour modifier un tableau, vous devez le déclarer avec var au lieu de let.
Vous pouvez modifier un élément existant en attribuant une nouvelle valeur à un index spécifique :
var colors = ["Red", "Green", "Blue"]
colors[1] = "Yellow"
print(colors) // ["Red", "Yellow", "Blue"]Pour ajouter de nouveaux éléments, utilisez la méthode append pour un seul élément, ou l'opérateur += pour ajouter plusieurs éléments à la fois :
var numbers = [1, 2, 3]
numbers.append(4)
print(numbers) // [1, 2, 3, 4]
numbers += [5, 6]
print(numbers) // [1, 2, 3, 4, 5, 6]Pour insérer un élément à une position spécifique, utilisez la méthode insert :
var fruits = ["Apple", "Orange"]
fruits.insert("Banana", at: 1)
print(fruits) // ["Apple", "Banana", "Orange"]Pour supprimer des éléments, utilisez remove(at:) avec l'index que vous souhaitez supprimer :
var items = ["A", "B", "C", "D"]
items.remove(at: 2)
print(items) // ["A", "B", "D"]N'oubliez pas que lorsque vous supprimez un élément, tous les éléments suivants se déplacent pour combler le vide.
Défi
FacileÉcrivez une fonction modifyInventory qui prend un tableau d'éléments, un nouvel élément à ajouter et un index à supprimer, puis retourne le tableau modifié.
Effectuez les opérations suivantes dans l'ordre :
- Modifiez le premier élément par
"Updated" - Ajoutez le nouvel élément à la fin du tableau
- Supprimez l'élément à l'index spécifié
Paramètres :
items([String]) : Le tableau initial d'élémentsnewItem(String) : L'élément à ajouterremoveIndex(Int) : L'index de l'élément à supprimer (après l'ajout)
Retourne : Le tableau modifié après toutes les opérations ([String])
Exemple : Si items est ["A", "B", "C"], newItem est "D", et removeIndex est 2, la fonction devrait :
- Modifier le premier élément :
["Updated", "B", "C"] - Ajouter "D" :
["Updated", "B", "C", "D"] - Supprimer à l'index 2 :
["Updated", "B", "D"]
Aide-mémoire
Les tableaux déclarés avec var peuvent être modifiés, tandis que les tableaux déclarés avec let sont immuables.
Modifiez un élément en attribuant une nouvelle valeur à un index spécifique :
var colors = ["Red", "Green", "Blue"]
colors[1] = "Yellow" // ["Red", "Yellow", "Blue"]Ajoutez un seul élément avec append :
var numbers = [1, 2, 3]
numbers.append(4) // [1, 2, 3, 4]Ajoutez plusieurs éléments avec += :
numbers += [5, 6] // [1, 2, 3, 4, 5, 6]Insérez un élément à une position spécifique avec insert(_:at:) :
var fruits = ["Apple", "Orange"]
fruits.insert("Banana", at: 1) // ["Apple", "Banana", "Orange"]Supprimez un élément à un index spécifique avec remove(at:) :
var items = ["A", "B", "C", "D"]
items.remove(at: 2) // ["A", "B", "D"]Lorsqu'un élément est supprimé, tous les éléments suivants se déplacent vers le bas pour combler le vide.
Essayez vous-même
func modifyInventory(items: [String], newItem: String, removeIndex: Int) -> [String] {
// É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 dynamique12Bases des tableaux
Déclarer un tableauAccéder aux élémentsModifier des tableauxMéthodes de tableauxRécapitulatif - Liste de produitsRécapitulatif - Tableau inverséTuples