Menu
Coddy logo textTech

Seguridad Básica ante Null

Parte de la sección Fundamentos del Journey de Dart de Coddy. Lección 14 de 94.

Seguridad de nulos ayuda a prevenir fallos inesperados en la aplicación al controlar qué variables pueden estar vacías (null).

Por defecto, las variables deben contener un valor:

void main() {
  String name = 'Dart';
  print(name);  // Salida: Dart
  
  // Esto causaría problemas:
  // name = null;  // No permitido
}

Agrega ? después del tipo para permitir valores nulos:

void main() {
  String? name = 'Dart';
  print(name);  // Salida: Dart
  
  // Ahora podemos asignar null
  name = null;
  print(name);  // Salida: null
}

Puedes declarar variables anulables de cualquier tipo:

void main() {
  int? age;  // Sin valor inicial, por defecto null
  double? price = 19.99;
  bool? isAvailable = true;
  
  print(age);         // Salida: null
  print(price);       // Salida: 19.99
  print(isAvailable); // Salida: true
  
  // Podemos cambiar cualquiera de estos a null
  price = null;
  isAvailable = null;
}

 

La seguridad ante valores nulos ayuda a proteger tu aplicación de fallos inesperados que ocurren cuando tu código intenta usar valores nulos en operaciones.

challenge icon

Desafío

Principiante

Crea un programa en Dart que demuestre la seguridad básica frente a valores nulos mediante el operador ?:

  1. Declara una variable de tipo String llamada username y asígnale null mediante el operador de seguridad frente a valores nulos ? (String?)
  2. Declara una variable de tipo int llamada userAge y asígnale null mediante el operador de seguridad frente a valores nulos
  3. Imprime ambas variables con etiquetas en el SIGUIENTE formato EXACTO:
Username: null
User age: null

Después:

  1. Asigna el valor "DartLearner" a la variable username
  2. Asigna el valor 25 a la variable userAge
  3. Vuelve a imprimir ambas variables con EXACTAMENTE el mismo formato que antes

Tu salida debe coincidir con el formato exacto mostrado arriba.

Pruébalo tú mismo

void main() {
  // Declara tus variables nullable aquí
  String? username = ?;
  int? userAge = ?;
  
  // Imprime los valores iniciales con etiquetas
  print("Username: " + username.toString());
  print("User age: " + userAge.toString());
  
  // Asigna nuevos valores a las variables
  username = ?;
  userAge = ?;
  
  // Imprime los valores actualizados con las mismas etiquetas
  print("Username: " + username.toString());
  print("User age: " + userAge.toString());
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos

Practica por tu cuenta: Compilador de Dart online