Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> Lenguaje C

Tipos anulables en C#: Manejo seguro de valores null

C# proporciona un tipo de dato especial, los tipos anulables (nullable types), a los que se pueden asignar valores normales así como valores null.

Por ejemplo, puede almacenar cualquier valor desde -2,147,483,648 hasta 2,147,483,647 o null en una variable Nullable<Int32>. De forma similar, puede asignar true, false o null en una variable Nullable<bool>.

Sintaxis para declarar un tipo anulable:

<tipo_dato>? <nombre_variable> = null;

Ejemplo: Uso de tipos de datos anulables

using System;
namespace AplicaciónCalculadora {
    class NulablesEnAcción {
        static void Main(string[] args) {
            int? num1 = null;
            int? num2 = 45;
            double? num3 = new double?();
            double? num4 = 3.14157;
            bool? boolval = new bool?();
            
            // Mostrar valores
            Console.WriteLine("Anulables en acción: {0}, {1}, {2}, {3}", num1, num2, num3, num4);
            Console.WriteLine("Un valor booleano anulable: {0}", boolval);
            Console.ReadLine();
        }
    }
}

Resultado:

Anulables en acción: , 45, , 3.14157
Un valor booleano anulable: 

El operador de coalescencia nula (??)

El operador de coalescencia nula se usa con tipos de valor anulables y tipos de referencia. Se usa para convertir un operando al tipo de otro operando de valor anulable (o no), donde una conversión implícita es posible.

Si el valor del primer operando es null, el operador devuelve el valor del segundo operando; de lo contrario, devuelve el valor del primer operando.

Ejemplo:

using System;
namespace AplicaciónCalculadora {
    class NulablesEnAcción {
        static void Main(string[] args) {
            double? num1 = null;
            double? num2 = 3.14157;
            double num3;
            
            num3 = num1 ?? 5.34;
            Console.WriteLine("Valor de num3: {0}", num3);
            
            num3 = num2 ?? 5.34;
            Console.WriteLine("Valor de num3: {0}", num3);
            Console.ReadLine();
        }
    }
}

Resultado:

Valor de num3: 5.34
Valor de num3: 3.14157

Lenguaje C

  1. Aleación AgCu20: Propiedades Mecánicas y Térmicas Completas a 23 °C
  2. Aleación 15CDV6 (DIN 1.7734): Alta Resistencia, Tenacidad y Facilidad de Soldadura
  3. Aleación DIN 1.7734 15CDV6 – Alta Resistencia, Tenacidad y Fácil Soldadura
  4. Aleación 15CDV6 (DIN 1.7734) – Alta Resistencia, Soldabilidad Excepcional y Tenacidad Superior
  5. Aleación PtNi10: Propiedades Mecánicas y Térmicas Completas
  6. Aleación PtIr10 Platino-Iridio: Material de Alta Resistencia y Alta Temperatura
  7. Chapa Corroplast: Acero de Alto Rendimiento Resistente a la Corrosión para Mecanizado de Precisión
  8. X46 AM FCE: Acero API 5L de alto rendimiento para aplicaciones críticas de tuberías
  9. Ferro-Titanit® Cromoni: Aleación de Titanio de Alta Resistencia y No Magnética
  10. Atributos en C#: Mejora tu código con metadatos
  11. Dominando Optional en Java 8: Guía Práctica para Código Seguro contra Nulos