Menu
Coddy logo textTech

Operador de Afirmación Null

Parte de la sección Fundamentos del Journey de Dart de Coddy — lección 80 de 94.

El operador de aserción null (!) le indica a Dart que una variable nullable definitivamente no es null en ese punto del código. Obliga a Dart a tratar un tipo nullable como no nullable.

Crear una variable de cadena nullable:

String? name = 'Dart';

Usa el operador de aserción no nula para tratarlo como no anulable:

String nonNullableName = name!;
print(nonNullableName);

Después de ejecutar el código anterior, la salida será:

Dart

¡Ten cuidado! Si la variable es realmente null, tu programa se estrellará:

String? language = null;
// String nonNullable = language!; // This would crash at runtime
challenge icon

Desafío

Principiante

En este desafío, practicarás el uso del Operador de Afirmación de No Nulo (!) en Dart. Este operador le indica a Dart que una variable nullable definitivamente no es nula en un punto específico de tu código.

Completa el código a continuación para usar el operador de afirmación de no nulo y convertir la variable nullable username en una cadena no nullable que se pueda asignar a displayName.

Salida esperada:

Welcome, DartLearner!

Hoja de referencia

El operador de afirmación de no nulo (!) le indica a Dart que una variable nullable definitivamente no es null en ese punto del código. Obliga a Dart a tratar un tipo nullable como no nullable.

String? name = 'Dart';
String nonNullableName = name!;
print(nonNullableName); // Output: Dart

Advertencia: Si la variable es realmente null, el programa fallará en tiempo de ejecución:

String? language = null;
// String nonNullable = language!; // This would crash

Pruébalo tú mismo

void main() {
  // Esta variable String nullable ya tiene un valor no nulo
  String? username = 'DartLearner';
  
  // TODO: Usa el operador de aserción no nula (!) para convertir username
  // de un String nullable a un String no nullable
  // para que pueda asignarse a displayName
  String displayName;
  
  // Esto mostrará el mensaje de bienvenida
  print('Welcome, $displayName!');
}
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