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

Dúvida no Ex. 3 da Aula 6 - Construtores

Tive dificuldades em implementar a validação de data e procurei dar uma olhada no código do instrutor.

if (! isDataViavel(dia, mes, ano)) //

Gostaria de saber se alguém por favor pode me dizer o que é, e pra que serve este ponto de ! que aparece antes da palavra isDataViavel.

2 respostas
solução!

Olá Diego, tudo bem?O ponto ! no código é um inversor de condição. Quando fazemos um if por exemplo:if( numeroEhPar(2) ){ .. }

Estamos esperando uma resposta de que seja verdadeira a condição, sendo que sim, dois é par! agora quando fazemos:if( ! numeroEhPar(2) ){ .. }

Estamos negando a condição, gerando o resultado inverso. Ou seja, Dois é par, mas o resultado vai ser false, por causa do sinal de exclamação.Apesar de ser comum encontrar códigos assim, muito desenvolvedores evitam esse tipo de condição escrevendo a função/metodo de forma mais clara, em vez de:

if( ! numeroEhPar(2) ){ .. }

Usam:

if( EhImpar(2) ){ .. }

Obs: Em uma leitura direta desse exemplo, o primeiro código pergunta: Este numéro NÂO é par? E o segundo exemplo pergunta: Esse numero é impar?

Conseguiu entender Diego? Espero ter ajudado. Bons estudos...

Entendi sim Wanderson, ótima explicação muito obrigado pela ajuda!