Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Langue C

Comprendre les types nullables en C# : gérer les valeurs nulles en toute sécurité

C# fournit des types nullables permettant d'assigner à la fois les valeurs normales d'un type et la valeur null.

Par exemple, un Nullable<Int32> peut stocker toute valeur de -2 147 483 648 à 2 147 483 647 ou null. De même, un Nullable<bool> peut valoir true, false ou null.

Syntaxe de déclaration

<type_données>? <nom_variable> = null;

Le ? est un raccourci pour Nullable<T>.

Exemple d'utilisation

using System;

namespace ApplicationNullables
{
    class DemoNullables
    {
        static void Main(string[] args)
        {
            int? num1 = null;
            int? num2 = 45;
            double? num3 = new double?();
            double? num4 = 3.14157;
            bool? boolval = new bool?();
            
            // Affichage
            Console.WriteLine("Nullables : {0}, {1}, {2}, {3}", num1, num2, num3, num4);
            Console.WriteLine("Booléen nullable : {0}", boolval);
            Console.ReadLine();
        }
    }
}

Résultat :

Nullables : , 45, , 3.14157
Booléen nullable : 

Note : l'affichage d'une valeur null produit une chaîne vide.

L'opérateur de coalescence nulle (??)

Cet opérateur fonctionne avec les types valeurs nullables et les types référence. Il retourne la valeur de son opérande de gauche si elle n'est pas null, sinon la valeur de l'opérande de droite.

Syntaxe : expr1 ?? expr2

Exemple

using System;

namespace ApplicationNullables
{
    class DemoNullables
    {
        static void Main(string[] args)
        {
            double? num1 = null;
            double? num2 = 3.14157;
            double num3;
            
            num3 = num1 ?? 5.34;
            Console.WriteLine("Valeur de num3 : {0}", num3); // 5.34
            
            num3 = num2 ?? 5.34;
            Console.WriteLine("Valeur de num3 : {0}", num3); // 3.14157
            
            Console.ReadLine();
        }
    }
}

Résultat :

Valeur de num3 : 5.34
Valeur de num3 : 3.14157

Bonnes pratiques

Langue C

  1. Maîtriser Java 8 Optional : Guide pratique pour un code sans null
  2. Maîtriser les attributs en C# : enrichir le code avec des métadonnées
  3. Ferro-Titanit® Cromoni – Alliage de titane haute résistance, non magnétique
  4. Alliage AgCu20 : Propriétés mécaniques et thermiques complètes à 23°C
  5. Alliage 15CDV6 (DIN 1.7734) : Haute Résistance, Tenacité & Soudabilité Aisée
  6. DIN 1.7734 5 – Alliage 15CDV6 : Haute Résistance, Tenacité & Soudabilité Aisée
  7. Alliage 15CDV6 (DIN 1.7734) – Haute Résistance, Soudage Facile, Tenacité Supérieure
  8. Alliage PtNi10 : Propriétés Mécaniques & Thermiques Complètes
  9. Alliage PtIr10 Platine-Iridium : Matériau Haute Résistance & Haute Température