Menu
Coddy logo textTech

Operador de Asserção de Null

Parte da seção Fundamentos do Journey de Dart da Coddy — lição 80 de 94.

O operador de afirmação de não nulidade (!) informa ao Dart que uma variável anulável definitivamente não é nula naquele ponto no código. Ele força o Dart a tratar um tipo anulável como não anulável.

Crie uma variável string anulável:

String? name = 'Dart';

Use o operador de afirmação de nulidade para tratá-lo como não anulável:

String nonNullableName = name!;
print(nonNullableName);

Após executar o código acima, a saída será:

Dart

Tenha cuidado! Se a variável for realmente null, seu programa irá travar:

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

Desafio

Iniciante

Neste desafio, você praticará o uso do Operador de Afirmação de Não Nulo (!) em Dart. Este operador informa ao Dart que uma variável anulável definitivamente não é nula em um ponto específico do seu código.

Complete o código abaixo para usar o operador de afirmação de não nulidade para converter a variável anulável username em uma string não anulável que pode ser atribuída a displayName.

Saída esperada:

Welcome, DartLearner!

Folha de consulta

O operador de afirmação de null (!) informa ao Dart que uma variável anulável definitivamente não é null naquele ponto no código. Ele força o Dart a tratar um tipo anulável como não anulável.

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

Aviso: Se a variável for de fato null, seu programa falhará em tempo de execução:

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

Experimente você mesmo

void main() {
  // Esta variável String anulável já possui um valor não nulo
  String? username = 'DartLearner';
  
  // TODO: Use o operador de asserção de não nulidade (!) para converter username
  // de uma String anulável para uma String não anulável
  // para que possa ser atribuída a displayName
  String displayName;
  
  // Isso exibirá a mensagem de boas-vindas
  print('Welcome, $displayName!');
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos