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

Estou com dúvida no curso de Primeiros passos com Java, no exercício 8 do capítulo Modificadores de acesso.

Estou com uma duvida neste codigo.

public class Data {

public Data(int dia, int mes, int ano) { this.dia = dia; this.mes = mes; this.ano = ano;

if (! isDataViavel(dia, mes, ano)) { System.out.println("A data " + formata() + " não existe!"); } }

private boolean isDataViavel(int dia, int mes, int ano) { if (dia <= 0 || mes <= 0) { return false; }

int ultimoDiaDoMes = 31; // por padrao são 31 dias if (mes == 4 || mes == 6 || mes == 9 || mes == 11 ) { ultimoDiaDoMes = 30; } else if (mes == 2) { if (ano % 4 == 0) { ultimoDiaDoMes = 29; } else { ultimoDiaDoMes = 28; } } if (dia > ultimoDiaDoMes) { return false }

return true; } }

A minha única dúvida é oq significa esse "!" nesse if dentro do construtor Data??? Obrigado

3 respostas

! é usado para negar uma condição.

Roberto o sinal de ! significa falso, ele serve para alterar um estado booleano, como verdadeiro e falso, abç!

solução!

Guilherme, o ! serve para inverter uma condição booleana, ou seja, se a condição dentro do if for verdadeira, o ! faz com que ela seja tratada como falsa, e se for falsa trata como verdadeira. Abraços.