Opérateur de coalescence des valeurs nil
Fournissez une valeur par défaut lorsqu’une valeur optionnelle est nil.
Opérateur de coalescence des valeurs nil est une leçon Swift Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Swift Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Swift Academy comprend 4 leçons au total.
Le problème des valeurs nulles
Une valeur optionnelle peut contenir une valeur ou être nil. Souvent, vous voulez utiliser la valeur si elle est présente, ou utiliser une valeur par défaut si elle est nil.
let typedName: String? = nil
let name = typedName ?? "Guest"
print(name)L'opérateur ??
L'opérateur de coalescence des valeurs nulles ?? prend une valeur optionnelle à gauche et une valeur par défaut à droite. Si la valeur optionnelle n'est pas nulle, vous obtenez sa valeur extraite ; sinon, vous obtenez la valeur par défaut.
let stored: Int? = 42
let value = stored ?? 0
print(value)La valeur par défaut n'est utilisée qu'en cas de valeur nulle
La valeur par défaut située à droite n'est utilisée que lorsque le côté gauche vaut nil. Une valeur présente, même 0 ou une chaîne vide, est conservée.
let count: Int? = 0
let result = count ?? 99
print(result)Le résultat n'est pas optionnel
L'expression optional ?? default produit une valeur non optionnelle, car il y a toujours une valeur de repli.
let nickname: String? = nil
let display: String = nickname ?? "Anonymous"
print(display)Remplacer if let
Sans ??, vous écririez une structure if/else pour extraire la valeur et fournir une valeur par défaut. La coalescence des valeurs nulles réduit cela à une seule expression.
let age: Int? = nil
var finalAge: Int
if let unwrapped = age {
finalAge = unwrapped
} else {
finalAge = 18
}
print(finalAge)La même logique avec ??
Voici l'exemple précédent réécrit avec la coalescence des valeurs nulles. Il est plus court et son intention est évidente.
let age: Int? = nil
let finalAge = age ?? 18
print(finalAge)Coalescence dans une interpolation
Vous pouvez placer directement ?? dans une interpolation de chaîne pour afficher un fallback convivial.
let city: String? = nil
print("City: \(city ?? "Unknown")")À partir de conversions susceptibles d'échouer
Convertir une chaîne en entier renvoie une valeur optionnelle. La coalescence des valeurs nulles fournit une valeur par défaut lorsque le texte ne représente pas un nombre.
let text = "abc"
let number = Int(text) ?? -1
print(number)Coalescence avec des dictionnaires
Rechercher une clé dans un dictionnaire renvoie une valeur optionnelle. Utilisez ?? pour fournir un fallback lorsque la clé est absente.
let scores = ["Ann": 90]
let bob = scores["Bob"] ?? 0
print(bob)La valeur par défaut peut être calculée
Le côté droit peut être n'importe quelle expression du type approprié, même un appel de fonction. Il n'est évalué que lorsque c'est nécessaire.
func defaultName() -> String {
return "Player1"
}
let entered: String? = nil
print(entered ?? defaultName())Les types doivent correspondre
La valeur par défaut doit être compatible avec le type contenu par la valeur optionnelle. Un Int? nécessite une valeur par défaut de type Int.
let maybe: Int? = nil
let safe = maybe ?? 100
print(safe + 1)Vérification rapide
Testez la coalescence des valeurs nulles.
Récapitulatif : l'opérateur de coalescence des valeurs nulles
L'opérateur ?? extrait la valeur d'une optionnelle ou utilise une valeur par défaut, produisant ainsi un résultat non optionnel. La valeur par défaut n'est utilisée que lorsque l'optionnelle vaut nil.
let input: String? = nil
let name = input ?? "Default"
print(name)Questions Fréquemment Posées
La leçon « Opérateur de coalescence des valeurs nil » est-elle gratuite ?
Oui — le texte complet de « Opérateur de coalescence des valeurs nil » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Swift Academy, passe à CoddyKit PRO. Le cours Swift Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Opérateur de coalescence des valeurs nil » ?
Fournissez une valeur par défaut lorsqu’une valeur optionnelle est nil. Tu pratiques Swift Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Swift Academy ?
Aucune expérience préalable n'est requise. Swift Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.
Combien de temps prend la leçon « Opérateur de coalescence des valeurs nil » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Swift Academy ?
Oui. Chaque leçon Swift Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Opérateur de coalescence des valeurs nil
- Chaînage de valeurs par défaut
- Valeurs par défaut des paramètres de fonction
- Indices par défaut des dictionnaires