Tableau (Array)
Tableau (Array)
Depuis le début de ce cours, on a appris à stocker nos données dans des constantes et des variables. C’est une bonne pratique, mais dans certains cas, ça peut devenir relou à gérer. Imagine que tu as un ensemble de données liées, comme une liste de fruits, sur laquelle tu veux travailler. Bien sûr, tu pourrais stocker chaque fruit dans une variable distincte et les manipuler un par un, mais ça deviendrait vite compliqué et peu pratique à gérer.
Heureusement, Swift, comme tous les langages de programmation modernes, met à disposition un outil efficace pour regrouper plusieurs données en une seule unité : les tableaux (ou arrays en anglais). Grâce aux tableaux, tu peux organiser et manipuler facilement des collections d’éléments de même nature.
let apple = "Pomme"
let strawberry = "Fraise"
let banana = "Banane"
let pineapple = "Ananas"
let kiwi = "Kiwi"
// ❌ Mauvaise pratique.
Syntaxe
[value1, value2, value3]
var fruits: [String] = ["Pomme", "Fraise", "Banane", "Ananas", "Kiwi"]
Un tableau s’écrit entre crochets [], et chaque valeur est séparée par une virgule ,. Raccourci pour les crochets : ⬆ ⌥ ( ).
Lorsqu’on déclare un tableau, comme pour les var et let, on peut préciser son type. Par exemple, [String] indique que le tableau fruits contient uniquement des chaînes de caractères. Le type est défini entre crochets [] pour signaler qu’il s’agit d’un tableau.
Cependant, grâce à l’inférence de type de Swift, tu n’es pas obligé de préciser le type du tableau si ses valeurs sont explicites. Swift le déduit automatiquement en fonction des données que tu as fournies.
⚠️ Par convention, on nomme toujours un tableau au pluriel, car il regroupe plusieurs valeurs. Ça rend ton code plus facile à lire.
Accéder à un élément spécifique
var fruits: [String] = ["Pomme", "Fraise", "Banane", "Ananas", "Kiwi"]
let firstFruit = fruits[1]
print(firstFruit)
// Lecture dans la console -> Fraise
Chaque élément du tableau a un index. On commence à compter à partir de 0. Ça signifie que dans l’exemple, Pomme = 0, Fraise = 1 et Banane = 2. Pour accéder à un élément spécifique, on utilise son index comme ceci : nomDuTableau[numéro de l’index]. Tu l’as compris, dans notre exemple, firstFruit stocke fruits[1] et récupère donc l’index 1 qui correspond bien à la Fraise.
Ajouter des valeurs
var mangas = ["Naruto"]
mangas.append("Berserk")
mangas += ["Dragon Ball", "One Punch Man"]
print(mangas)
// Lecture dans la console -> ["Naruto", "Berserk", "Dragon Ball", "One Punch Man"]
Pour ajouter des éléments dans un tableau, utilise la méthode .append(), avec la ou les valeurs que tu souhaite rajouter en paramètre. Tu peux également utiliser l’affectation composée += pour rajouter plusieurs valeurs d’un coup.
Insérer des valeurs
var mangas = ["Naruto", "Berserk", "Dragon Ball", "One Punch Man"]
mangas.insert("One Piece", at: 0)
print(mangas)
// Lecture dans la console -> ["One Piece", "Naruto", "Berserk", "Dragon Ball", "One Punch Man"]Pour insérer une valeur à un index ciblé, tu peux utiliser la méthode insert(value, at: indexNumber).
Supprimer des éléments
var simpsonMembers = ["Homer", "Bart", "Marge", "Maggie"]
simpsonMembers.remove(at: 2)
simpsonMembers.removeLast()
print(simpsonMembers)
// Lecture dans la console -> ["Homer", "Bart"]
simpsonMembers.removeAll()
print(simpsonMembers)
// Lecture dans la console -> [ ]
Pour supprimer une ou plusieurs données d’un tableau en Swift, tu peux utiliser différentes méthodes en fonction de tes besoins :
- Supprimer un élément précis Utilise la méthode
remove(at: indexNumber), qui permet de cibler et retirer l’élément situé à l’index spécifié. - Supprimer le dernier élément Utilise la méthode
removeLast()pour retirer l’élément à la fin du tableau. - Supprimer tous les éléments Utilise la méthode
removeAll()pour vider entièrement le tableau.
Vérifier la présence de certaines valeurs
let numbers = [4, 5, 6]
if numbers.contains(5) == true {
print("Le tableau numbers contient bien le numéro 5.")
}
Lecture dans la console ->
Le tableau numbers contient bien le numéro 5.
Pour vérifier si une valeur est bien présente dans un tableau, tu peux utiliser la méthode .contains().
Concaténation
var dragonBalls = ["Trunk", "Son Goku", "Bulma", "Chichi", "Picolo"]
var narutos = ["Kakashi", "Naruto", "Sasuke", "Sakura Chan"]
var mangas = dragonBall + naruto
print(mangas)
// Lecture dans la console -> ["Trunk", "Son Goku", "Bulma", "Chichi", "Picolo","Kakashi", "Naruto", "Sasuke", "Sakura Chan"]
Tu peux concaténer des tableaux entre eux en utilisant le symbole + de concaténation.
Tableaux dans des tableaux
let array1 = [1, 2, 3]
let array2 = [4, 5, 6]
let containerArray = [array1, array2]
let firstArray = containerArray[0]
let firstElement = containerArray[0][0]
print(containerArray)
print(firstArray)
print(firstElement)
/* Lecture dans la console ->
- [[1, 2, 3], [4, 5, 6]]
- [1, 2, 3]
- 1
*/
Tu peux mettre des tableaux dans des tableaux. Pour accéder aux valeurs des tableaux, on utilise les index de chaque élément de nos tableaux comme dans l’exemple ci-dessus : nomDuTableau[0][2]. On parle de tableaux en plusieurs dimensions.
Exercices Pratiques
Panier de course
Télécharger le playground
Accède aux consignes directement en téléchargeant le playground.
⚠️ Les consignes que tu trouveras dans le playground ne sont pas verrouillées. Fais attention à ne pas les effacer par inadvertance !
Objectif
Avec cette mise en pratique, tu devrais savoir comment manipuler un tableau : créer une donnée, la lire, la modifier ou la supprimer. On appelle ça le CRUD (Create, Read, Update, Delete), une mécanique essentielle que tu rencontreras systématiquement lorsque tu travailleras avec des données. Pense à bien appliquer les conventions de nommage : le nom d’un tableau se met généralement au pluriel pour indiquer qu’il contient plusieurs valeurs. Enfin, assure-toi de bien comprendre la mécanique d’indexation d’un tableau. C’est une notion très simple, mais très utile pour accéder ou modifier des éléments dans tes programmes.
Note
Pourquoi j’insiste autant sur les bonnes pratiques pour nommer tes variables, constantes et maintenant tes tableaux ? Pour l’instant, tu débutes et tes codes sont petits, donc relativement faciles à lire. Mais très vite, tu vas te lancer dans des programmes plus grands, jusqu’à développer une application complète. Si tu ne prends pas l’habitude de suivre ces conventions, ton code deviendra rapidement illisible et difficile à maintenir.
Imagine revenir sur un projet que tu n’as pas ouvert depuis plus d’un an pour l’améliorer ou le corriger. Si tu as nommé tes composants n’importe comment, tu risques de passer plus de temps à essayer de comprendre ton propre code qu’à le modifier. Et n’oublie pas que développer une application est souvent un travail d’équipe. Si chacun fait « à sa sauce », c’est le bazar assuré dans le projet !
Alors fais-toi plaisir, respecte les bonnes pratiques et sauve le monde du code. Ton futur toi (et ton équipe) te remerciera. 🙏🏼
Exercices Pratiques
Panier de course
Télécharger le playground
Accède aux consignes directement en téléchargeant le playground.
⚠️ Les consignes que tu trouveras dans le playground ne sont pas verrouillées. Fais attention à ne pas les effacer par inadvertance !
Objectif
Avec cette mise en pratique, tu devrais savoir comment manipuler un tableau : créer une donnée, la lire, la modifier ou la supprimer. On appelle ça le CRUD (Create, Read, Update, Delete), une mécanique essentielle que tu rencontreras systématiquement lorsque tu travailleras avec des données. Pense à bien appliquer les conventions de nommage : le nom d’un tableau se met généralement au pluriel pour indiquer qu’il contient plusieurs valeurs. Enfin, assure-toi de bien comprendre la mécanique d’indexation d’un tableau. C’est une notion très simple, mais très utile pour accéder ou modifier des éléments dans tes programmes.
Note
Pourquoi j’insiste autant sur les bonnes pratiques pour nommer tes variables, constantes et maintenant tes tableaux ? Pour l’instant, tu débutes et tes codes sont petits, donc relativement faciles à lire. Mais très vite, tu vas te lancer dans des programmes plus grands, jusqu’à développer une application complète. Si tu ne prends pas l’habitude de suivre ces conventions, ton code deviendra rapidement illisible et difficile à maintenir.
Imagine revenir sur un projet que tu n’as pas ouvert depuis plus d’un an pour l’améliorer ou le corriger. Si tu as nommé tes composants n’importe comment, tu risques de passer plus de temps à essayer de comprendre ton propre code qu’à le modifier. Et n’oublie pas que développer une application est souvent un travail d’équipe. Si chacun fait « à sa sauce », c’est le bazar assuré dans le projet !
Alors fais-toi plaisir, respecte les bonnes pratiques et sauve le monde du code. Ton futur toi (et ton équipe) te remerciera. 🙏🏼