Un Array permet de stocker de façon ordonnée des valeurs de même type dans une liste. Sa structure se compose d’une suite de valeurs entre crochets séparées chacunes par une virgule.

var myFirstArray = [“Pierre”, “Paul”, “Jacques”]
var intArrat: [Int] = [23, 12, 81, 84, 13] 

 Nous pouvons aussi initialiser un array vide de ces 2 façons: 

var array1 = [Bool]()
var array2: [Double] = []  

 Le but d’avoir une liste de valeurs est bien évidemment de stocker ces valeurs à un endroit précis, mais aussi de pouvoir y accéder, que ce soit de manière globale ou individuelle.

Prenons myFirstArray: var myFirstArray = [“Pierre”, “Paul”, “Jacques”]

Si nous voulons voir tous les éléments de notre array, un print suffit. 

var myFirstArray = [“Pierre”, “Paul”, “Jacques”]
print(myFirstArray)
//[“Pierre”, “Paul”, “Jacques”] 

Nous pouvons aussi compter le nombre d’éléments dans notre array, avec le .count

print(myFirstArray.count)
//3
 

Nous pouvons voir si notre array est vide avec le .isEmpty

print(myFirstArray.isEmpty)
//false 

Nous pouvons aussi itérer, c’est à dire passer à travers tous les éléments de notre array avec une boucle. Pour en savoir plus sur les boucles, rendez-vous à la section dédiée:

for element in myFirstArray {
    print(element)
}
//Pierre
//Paul
//Jacques 

Index:

Comme dit au début, l’array est une liste ordonnée, chaque élément est défini par un index. Le premier élément part de 0, et pas de 1. Ceci est très important, donc je le répète, l’index commence à 0. Si je veux accéder au premier élément, j’écris entre crochets l’index de l’élément que je veux récupérer.

let first = myFirstArray[0]

print(first)

//Pierre 

let second = myFirstArray[1]

print(second)

//Paul 

Je peux aussi accéder au premier élément grâce au Count que nous avons. Cependant, il faut faire attention car le count compte le nombre d’éléments et notre index par de 0, pour ne pas avoir d’erreur, le dernier élément sera Count – 1:

var myFirstArray = [“Pierre”, “Paul”, “Jacques”]
let last = myFirstArray[myFirstArray.count – 1]
print(last)
//Jacques 

 

Nous pouvons aussi accéder au premier et dernier élément d’un array avec .first et .last. Attention, lors de la récupération de cette valeur, Swift n’est pas sûr d’obtenir une valeur, il n’est pas sûr qu’il y ait des éléments dans notre array, le résultat sera donc un optionnel. Pour en savoir plus sur les optionnels, une section y est dédiée.

var myFirstArray = [“Pierre”, “Paul”, “Jacques”]
let last = myFirstArray.last
let first  = myFirstArray.first
print(last)
//Optional(“Jacques”)
print(first)
//Optional(“Pierre”) 

Ajout

Nous pouvons ajouter des éléments à notre array. Sous réserve que celui-ci soit une variable et non une constante bien évidemment. Pour ceci, nous pouvons utiliser la méthode append qui s’utilise de 2 façons, newElement, ou contentOf.

newElement nous permet d’ajouter un élément. Qui sera ajouté en fin d’array:

var myFirstArray = [“Pierre”, “Paul”, “Jacques”]
//myFirstArray.append(newElement: String)
myFirstArray.append(“Sylvain”)
print(myFirstArray)
//[“Pierre”, “Paul”, “Jacques”, “Sylvain”] 

contentOf nous permet d’ajouter une séquence, c’est à dire un array à un autre array:

var myFirstArray = [“Pierre”, “Paul”, “Jacques”]
//myFirstArray.append(contentsOf: Sequence)
myFirstArray.append(contentsOf: [“Marie”, “Julie”, “Audrey”])
print(myFirstArray)
//[“Pierre”, “Paul”, “Jacques”, “Marie”, “Julie”, “Audrey”] 

On peut aussi ajouter un array à un array avec l’opérateur +=

var myFirstArray = [“Pierre”, “Paul”, “Jacques”]
myFirstArray += [“Leo”, “Chris”]
print(myFirstArray)
//[“Pierre”, “Paul”, “Jacques”, “Leo”, “Chris”] 

Insertion

Nous pouvons aussi insérer un ou plusieurs éléments à un array à un endroit précis grâce à l’index, pour ceci la méthode append sera remplacée par insert. Nous avons aussi le newElement pour un élément unique et contentOf pour un array à insérer.

var myFirstArray = [“Pierre”, “Paul”, “Jacques”]
//myFirstArray.insert(newElement: String, at: Int)
myFirstArray.insert(“Bob”, at: 1)
print(myFirstArray)
//[“Pierre”, “Bob”, “Paul”, “Jacques”] 

Ou bien

var myFirstArray = [“Pierre”, “Paul”, “Jacques”]
//myFirstArray.insert(contentsOf: Collection, at: Int)
myFirstArray.insert(contentsOf: [“Riri”, “Fifi”, “Loulou”], at: 2)
print(myFirstArray)
//[“Pierre”, “Paul”, “Riri”, “Fifi”, “Loulou”, “Jacques”] 

Suppression

Les méthodes Remove permettent de supprimer un élément d’un Array.

Le remove at index: Selon un index choisi

var myFirstArray = [“Pierre”, “Paul”, “Jacques”]
myFirstArray.remove(at: 1)
print(myFirstArray)
//[“Pierre”, “Jacques”]
 

Le removeFirst() pour le premier élément:

var myFirstArray = [“Pierre”, “Paul”, “Jacques”]
myFirstArray.removeFirst()
print(myFirstArray)
//[“Paul”, “Jacques”] 

Le removeLast pour le dernier élément:

var myFirstArray = [“Pierre”, “Paul”, “Jacques”]
myFirstArray.removeLast()
print(myFirstArray)
//[“Pierre”, “Paul”] 

Pour vider un array, nous pouvons lui attribuer une nouvelle valeur vide ‘[]’ ou utiliser la méthode removeAll()

var myFirstArray = [“Pierre”, “Paul”, “Jacques”]
myFirstArray = []
print(myFirstArray)
//[] 

ou

var myFirstArray = [“Pierre”, “Paul”, “Jacques”]
myFirstArray.removeAll()
print(myFirstArray)
//[]