Em programação, lidar com valores nulos é uma tarefa comum, mas muitas vezes complicada. No Salesforce Apex, a introdução do operador de coalescência nula (??) na última release traz uma solução elegante para este desafio, permitindo aos desenvolvedores escrever código mais limpo e eficiente.
O Que é o Operador de Coalescência Nula?
O operador de coalescência nula (??) permite definir um valor padrão para uma variável que pode ser nula, tudo em uma expressão concisa. Se a expressão à esquerda do operador for nula, o valor à direita é utilizado; caso contrário, o valor da própria expressão é mantido.
Benefícios
Redução de Código: Elimina a necessidade de estruturas condicionais extensas para checagem de nulos.
Melhoria na Legibilidade: Torna o código mais intuitivo, facilitando a manutenção e compreensão.
Prevenção de Erros: Minimiza a ocorrência de NullPointerException ao garantir que valores padrão sejam utilizados quando necessário.
O operador de coalescência nula é uma adição valiosa à linguagem Apex, simplificando a manipulação de valores nulos e promovendo práticas de codificação mais seguras e eficientes. Adotar esse recurso pode significar um código mais robusto, com menor risco de falhas em tempo de execução.
Exemplo 1: Valor Padrão para Strings
String nome = contato.Nome ?? "Desconhecido";
Este código atribui o nome do contato à variável nome se não for nulo; caso contrário, atribui a string "Desconhecido
Exemplo 2: Encadeamento de Coalescência Nula
String enderecoEmail = usuario.Email ?? contato.EmailSecundario ?? "email@padrao.com";
Aqui, o Apex tenta atribuir usuario.Email a enderecoEmail. Se usuario.Email for nulo, tenta contato.EmailSecundario, e se ambos forem nulos, utiliza "email@padrao.com".
Exemplo 3: Operações com Listas
Integer tamanhoLista = (umaLista ?? new List<String>()).size();
Este exemplo demonstra como garantir que operações em listas não resultem em erros devido a nulos, atribuindo uma nova lista vazia caso umaLista seja nula.
Esse artigo em inglês aborda outros exemplos interessantes que podemos aplicar no dia a dia.
https://sfdclesson.com/2023/12/21/simplify-null-checks-in-apex-with-new-null-coalescing-operator/
Top comments (0)