Menu
Coddy logo textTech

Types valeur nullables

Fait partie de la section Logique & Flux du Journey C# de Coddy — leçon 32 sur 66.

En C#, les types valeur comme int, float et bool ne peuvent normalement pas contenir de valeurs null. Les types valeur nullable permettent à ces types de représenter soit une valeur, soit null.

Déclarer un int régulier :

int regularNumber = 10;

Déclarez un int nullable en utilisant la syntaxe ? :

int? nullableNumber = 20;

Affecter null à un type nullable :

nullableNumber = null;

Après l'exécution du code ci-dessus, nullableNumber ne contient aucune valeur (null).

Vérifier si un type nullable possède une valeur :

if (nullableNumber.HasValue)
{
    Console.WriteLine("Value is: " + nullableNumber.Value);
}
else
{
    Console.WriteLine("No value");
}

Vous pouvez également utiliser l'opérateur de coalescence nulle pour fournir une valeur par défaut :

int definiteNumber = nullableNumber ?? 0;
challenge icon

Défi

Facile

Créez une méthode nommée ProcessNullableAge qui :

  1. Prend un paramètre nullable int appelé age
  2. Vérifie si l’âge a une valeur
  3. S’il a une valeur, affiche "Age is: X years" (où X est la valeur)
  4. S’il n’a pas de valeur, affiche "Age not provided"
  5. Retourne la valeur de l’âge s’il est présent, sinon retourne 0

Essayez vous-même

using System;

class Program
{
    // Implémentez la méthode ProcessNullableAge ici
    
    static void Main(string[] args)
    {
        string input = Console.ReadLine();
        
        int? age = null;
        if (input != "null")
        {
            age = int.Parse(input);
        }
        
        int result = ProcessNullableAge(age);
        Console.WriteLine("Returned value: " + result);
    }
}
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 Logique & Flux