Menu
Coddy logo textTech

Comprendre les optionnels

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

Parfois, une variable peut ne pas avoir de valeur du tout. En Swift, nous représentons l'absence de valeur à l'aide d'optionnels. Un optionnel indique « il y a une valeur, et elle est égale à x » ou « il n'y a pas de valeur du tout ».

Pour déclarer un optionnel, ajoutez un point d'interrogation ? après le type :

var nickname: String? = "Alex"
var age: Int? = nil

Dans l'exemple ci-dessus, nickname contient la valeur "Alex", tandis que age contient nil — la façon de Swift de dire « aucune valeur ». Les variables régulières ne peuvent pas être nil, mais les optionnels le peuvent.

Considérez un optionnel comme une boîte qui pourrait contenir quelque chose ou qui pourrait être vide. Avant d'utiliser ce qui se trouve à l'intérieur, vous devez vérifier s'il y a effectivement quelque chose. Il s'agit d'une fonctionnalité de sécurité clé dans Swift qui aide à prévenir les plantages dus à des valeurs manquantes inattendues.

var score: Int? = 100
print(score) // Optional(100)

score = nil
print(score) // nil

Remarquez que lorsque vous affichez un optionnel avec une valeur, il affiche Optional(100) plutôt que simplement 100. Pour accéder à la valeur réelle à l'intérieur, vous devez déballer l'optionnel — ce que nous aborderons dans les prochaines leçons.

challenge icon

Défi

Facile

Écrivez une fonction createOptional qui prend un nombre et renvoie une chaîne de caractères montrant à quoi ressemblerait ce nombre s'il était affiché comme un optionnel.

Lorsque vous affichez un optionnel qui contient une valeur, Swift l'affiche au format Optional(value).

Rappel de la syntaxe des fonctions : En Swift, une fonction qui renvoie une valeur utilise la flèche -> pour spécifier le type de retour, et le mot-clé return pour renvoyer le résultat. Par exemple :

func myFunction(param: Int) -> String {<br>    return "result"<br>}

Vous pouvez construire la chaîne de retour en utilisant l'interpolation de chaîne : "Optional(\(value))" — la partie \(value) insère le nombre directement dans la chaîne.

Paramètres :

  • value (Int) : Le nombre à envelopper dans le format optionnel

Retourne : Une chaîne de caractères au format Optional(value)value est le nombre fourni.

Exemple : Si l'entrée est 100, retournez "Optional(100)"

Aide-mémoire

En Swift, les optionnels représentent l'absence ou la présence d'une valeur. Un optionnel peut soit contenir une valeur, soit être nil.

Pour déclarer un optionnel, ajoutez un point d'interrogation ? après le type :

var nickname: String? = "Alex"
var age: Int? = nil

Les variables classiques ne peuvent pas être nil, mais les optionnels le peuvent. Utilisez nil pour représenter « aucune valeur » :

var score: Int? = 100
score = nil

Lors de l'affichage d'un optionnel avec une valeur, Swift l'affiche comme Optional(value) :

var score: Int? = 100
print(score) // Optional(100)

score = nil
print(score) // nil

Essayez vous-même

func createOptional(value: Int) -> String {
    // Écrire 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