Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Dúvida no Ex. 3 da Aula 7 - Equals e hashcode (Programando defensivamente)

A minha dúvida é, na aula foi nos dado a dica de procurar sempre programar defensivamente.

No caso do exercício, e imaginando um cenário real com usuários, o: if (nome == null) seria suficiente? Caso o usuário digite um espaço, ou por algum motivo o campo do formulário vazio gere uma String "" vazia ou com 1...2 espaços " " " ".

Qual seria a forma mais ampla nesse cenário de se programar defensivamente?

2 respostas

Olá Vinícios!,

Concorco com você cara, nesse ponto eu indicaria usar trim no caso de String e fazer a validação de campo vazio.

if(nome == null || nome.trim() == ""){
}

Ou até mesmo usar uma classe utilitária pra não ficar repetindo a mesma validação por todo o sistema.

solução!

Isso é uma boa ideia, mas em java nunca devemos comparar strings com ==, então sugiro:

nome.trim().isEmpty()

no lugar de

nome.trim() == ""