C# Academy · Lección

Nullable en cálculos

Comprenda cómo se propagan los valores nulos en las operaciones aritméticas.

Lección 4 de 413 pasos

Nullable en cálculos es una lección gratuita de C# Academy en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de C# Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de C# Academy incluye 4 lecciones en total.

Operadores levantados

C# «eleva» los operadores aritméticos y de comparación para que funcionen con tipos anulables. Los operadores como + obtienen automáticamente una versión anulable.

using System;

class Program {
    static void Main() {
        int? a = 5;
        int? b = 3;
        Console.WriteLine(a + b);
    }
}

El null se propaga en las operaciones matemáticas

Si algún operando de una expresión aritmética elevada es null, el resultado es null.

using System;

class Program {
    static void Main() {
        int? a = 5;
        int? b = null;
        int? sum = a + b;
        Console.WriteLine(sum.HasValue);
    }
}

Impresión de resultados null

Un resultado aritmético null se imprime como una cadena vacía, de acuerdo con la forma en que se muestran los valores anulables.

using System;

class Program {
    static void Main() {
        int? a = null;
        Console.WriteLine("Result: [" + (a * 2) + "]");
    }
}

Mezcla de tipos anulables y no anulables

Puede combinar int y int? en operaciones matemáticas; el int se promueve a anulable y el resultado también es anulable.

using System;

class Program {
    static void Main() {
        int? a = 10;
        int b = 4;
        int? result = a - b;
        Console.WriteLine(result);
    }
}

Comparaciones elevadas

Las comparaciones de valores anulables también se elevan. Si alguno de los lados es null, las comparaciones de orden como < devuelven false.

using System;

class Program {
    static void Main() {
        int? a = null;
        int? b = 5;
        Console.WriteLine(a < b);
        Console.WriteLine(a > b);
    }
}

Igualdad con null

A diferencia del orden, la igualdad está definida: dos valores null son iguales, y null no es igual a ningún número.

using System;

class Program {
    static void Main() {
        int? a = null;
        int? b = null;
        Console.WriteLine(a == b);
        Console.WriteLine(a == 0);
    }
}

Combinar ?? con operaciones matemáticas

Use ?? para reemplazar null por un número seguro antes de realizar el cálculo y mantener el resultado como no anulable.

using System;

class Program {
    static void Main() {
        int? a = null;
        int total = (a ?? 0) + 100;
        Console.WriteLine(total);
    }
}

Protección de la división

Combine comprobaciones de HasValue con cálculos para evitar tanto los valores null como la división entre cero.

using System;

class Program {
    static void Main() {
        int? a = 20, b = 4;
        if (a.HasValue && b.HasValue && b.Value != 0)
            Console.WriteLine(a.Value / b.Value);
    }
}

Suma de datos anulables

Al sumar datos que pueden contener valores null, decida si desea omitirlos o tratarlos como cero.

using System;

class Program {
    static void Main() {
        int?[] data = { 5, null, 10, null, 2 };
        int total = 0;
        foreach (var x in data)
            total += x ?? 0;
        Console.WriteLine(total);
    }
}

Bool anulable en la lógica

Un bool? participa en la lógica elevada: true | null es true, false & null es false y, en los demás casos, el resultado es null.

using System;

class Program {
    static void Main() {
        bool? a = null;
        bool? b = true;
        Console.WriteLine(a | b);
    }
}

Conversión del resultado a un valor simple

Después de un cálculo anulable, use ?? o GetValueOrDefault para obtener un valor simple que pueda mostrar.

using System;

class Program {
    static void Main() {
        int? a = 6, b = 7;
        int product = (a * b) ?? 0;
        Console.WriteLine(product);
    }
}

Comprobación rápida

Compruebe sus conocimientos sobre aritmética con valores anulables.

Resumen

C# eleva los operadores aritméticos, de comparación y lógicos para los tipos anulables. Cualquier operando null en una operación aritmética produce un resultado null, y las comparaciones de orden con null devuelven false, mientras que la igualdad está bien definida.

Use ?? o GetValueOrDefault para sustituir valores seguros antes o después de los cálculos, y use HasValue como protección cuando sea necesario.

Gratis para empezar

Aprende C# con un tutor de IA — gratis

Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.

Cursos
93
Lecciones
346

Preguntas frecuentes

¿La lección «Nullable en cálculos» es gratis?

Sí — el texto completo de «Nullable en cálculos» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de C# Academy, actualiza a CoddyKit PRO. El curso de C# Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Nullable en cálculos»?

Comprenda cómo se propagan los valores nulos en las operaciones aritméticas. Practicas C# Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar C# Academy?

No se requiere experiencia previa. C# Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.

¿Cuánto tiempo toma la lección «Nullable en cálculos»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de C# Academy?

Sí. Cada lección de C# Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Introducción a los tipos de valor anulables
  2. Propiedades HasValue y Value
  3. Operadores de fusión de nulos
  4. Nullable en cálculos
← Volver a C# Academy