Cascatas com atalho para nulo (?..)
Use cascatas com segurança em objetos anuláveis.
Cascatas com atalho para nulo (?..) é uma aula grátis de Dart Academy no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Dart Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Dart Academy inclui 4 aulas no total.
A armadilha dos valores anuláveis
Uma cascata comum em um valor que pode ser nulo falha. Chamar um método em nulo lança um erro antes que qualquer linha seja executada.
Conheça o curto-circuito para nulo
O Dart oferece uma versão segura: a cascata com curto-circuito para nulo, escrita como um ponto de interrogação seguido de dois pontos. Ela só é executada quando o objeto não é nulo.
button?..text = 'Save'
..onTap = save;Como funciona o curto-circuito
Se o destino for nulo, toda a cascata será ignorada e a expressão simplesmente se tornará nula. Sem falhas e sem trabalho pela metade.
Apenas o primeiro ponto precisa disso
Você escreve o ponto de interrogação apenas uma vez, na primeira cascata. As linhas seguintes permanecem com dois pontos simples; o Dart já sabe que o objeto não é nulo.
obj?..a()
..b()
..c();Tudo ou nada
O curto-circuito para nulo é tudo ou nada: ou todas as linhas são executadas porque o objeto existe, ou nenhuma é executada. A cadeia nunca é executada pela metade.
Comparação com a cascata comum
Uma cascata comum pressupõe que o objeto existe. A forma com curto-circuito para nulo é sua proteção quando o tipo é anulável e o valor pode estar ausente.
Ela retorna um valor anulável
Como o resultado pode ser o objeto ou nulo, toda a expressão tem um tipo anulável. Trate o valor recebido como possivelmente nulo.
Um exemplo real
Imagine uma configuração que talvez ainda não exista. O curto-circuito para nulo permite configurá-la somente quando ela estiver presente, em uma única linha organizada. 🛡️
settings?..theme = dark
..save();Não repita o marcador
Escrever o ponto de interrogação em todas as linhas está errado e o Dart sinaliza isso. A decisão de usar o curto-circuito ocorre uma vez, logo no início da cadeia.
Combina bem com a segurança contra nulos
O curto-circuito para nulo se encaixa na abordagem de segurança contra nulos do Dart. O compilador confia que as linhas após o primeiro ponto só serão executadas em um objeto real e presente.
Quando usá-lo
Use o curto-circuito para nulo quando uma variável for anulável e você quiser configurá-la sem uma verificação adicional de nulo ao redor da cascata.
Verificação rápida
Como escrever corretamente uma cascata com curto-circuito para nulo?
Recapitulação
A cascata com curto-circuito para nulo (?..) executa toda a cadeia somente quando o objeto existe, ignora tudo quando ele é nulo e precisa do marcador apenas uma vez. 🎯
Aprenda Dart com um tutor de IA — grátis
Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.
- Cursos
- 30
- Aulas
- 120
Perguntas Frequentes
A aula “Cascatas com atalho para nulo (?..)” é grátis?
Sim — o texto completo de “Cascatas com atalho para nulo (?..)” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Dart Academy, atualize para CoddyKit PRO. O curso de Dart Academy inclui 4 aulas no total.
O que vou aprender em “Cascatas com atalho para nulo (?..)”?
Use cascatas com segurança em objetos anuláveis. Você pratica Dart Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Dart Academy?
Nenhuma experiência prévia é necessária. Dart Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.
Quanto tempo leva a aula “Cascatas com atalho para nulo (?..)”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Dart Academy?
Sim. Cada aula de Dart Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- O operador de cascata (..)
- Cascatas com atalho para nulo (?..)
- Spread e spread consciente de nulo
- if e for em coleções