Menu
Coddy logo textTech

Repaso: seguridad frente a valores nulos

Parte de la sección Lógica y Flujo del Journey de C# de Coddy. Lección 35 de 66.

challenge icon

Desafío

Fácil

Crea un método llamado SafelyProcessData que acepte dos parámetros:

  1. Una cadena name que podría ser nula
  2. Un entero anulable age

El método debe:

  1. Comprobar si name es nulo o está vacío mediante patrones adecuados de comprobación de valores nulos
  2. Comprobar si age tiene un valor
  3. Devolver una cadena con formato de la siguiente manera:
    • Si name es nulo, devolver "No name provided"
    • Si name está vacío o contiene espacios en blanco, devolver "Invalid name"
    • Si age es nulo, devolver "Name: [name], Age: Unknown"
    • De lo contrario, devolver "Name: [name], Age: [age]"

¡Asegúrate de utilizar técnicas de programación defensiva para gestionar todos los posibles escenarios de valores nulos!

Pruébalo tú mismo

using System;

class Program
{
    // Implementa el método SafelyProcessData aquí
    
    static void Main(string[] args)
    {
        string nameInput = Console.ReadLine();
        string ageInput = Console.ReadLine();
        
        // Maneja el caso donde la entrada es la cadena "null"
        string name = nameInput == "null" ? null : nameInput;
        
        int? age = null;
        if (ageInput != "null")
        {
            age = int.Parse(ageInput);
        }
        
        string result = SafelyProcessData(name, age);
        Console.WriteLine(result);
    }
}

Todas las lecciones de Lógica y Flujo

Practica por tu cuenta: Compilador de C# online