Pular para o conteúdo principal

cast_from_nullable_always_fails

Detalhes sobre o diagnóstico 'cast_from_nullable_always_fails' produzido pelo analisador do Dart.

This cast will always throw an exception because the nullable local variable '{0}' is not assigned.

Descrição

#

O analisador emite este diagnóstico quando uma variável local que tem um tipo anulável não recebeu um valor e é convertida (cast) para um tipo não anulável. Como a variável não foi atribuída, ela tem o valor padrão null, fazendo com que a conversão lance uma exceção.

Exemplo

#

O código a seguir produz este diagnóstico porque a variável x é convertida para um tipo não anulável (int) quando se sabe que ela tem o valor null:

dart
void f() {
  num? x;
  x as int;
  print(x);
}

Correções comuns

#

Se a variável deve ter um valor antes da conversão, adicione um inicializador ou uma atribuição:

dart
void f() {
  num? x = 3;
  x as int;
  print(x);
}

Se a variável não deve ser atribuída, remova a conversão:

dart
void f() {
  num? x;
  print(x);
}

Encontrou essa página sem tradução ou que precisa de correção? Abra uma issue e nos ajude a manter esse site em PT-BR para ajudar pessoas como você.