O q isso resulta?

2 respostas
A

Salve comunidade,

Estou com um script aqui e não entendi nada dessa parte:

Esse log é uma variável boleana e dis é do tipo double.

Eu não tenho a menor idéia do pra q serve essa ? (interrogação) nem esse : (dois pontos)…

É algum tipo de operador, qual seria a utilização ? E o resultado desse script ?

Ae galera se puderem ajudar eu agradeço, tenho urgência …

Valew…

2 Respostas

F

o operador ?: funciona assim:

bool ? exp1 : exp2

o operador ?: testa a condicao antes do ?, caso ela seja verdadeira, exp1 eh retornado, caso contrario exp2 eh retornado, ex:

int x = 5 == 5 ? 5 : 7;

equivale a

int x;
if (5 == 5) x = 5;
else x = 7;

no seu codigo, ele vai testar 10 < 8, o que vai resultar em false, entaum sera testado o boolean log (no seu codigo tem um ?: dentro de outro ?: ), se log for verdadeiro, retornara 3, caso contrario retornara 300 / dis, independentemente do resultado, sera multiplicado por 10…

se fosse

double x = (10<8?.1:log?3:300/dis)*10;

equivaleria a

double x;
if (10 < 8) x = 0.1;
else{
 if (log) x = 3;
 else x = 300 / dis;
}
x *= 10;
A

Grande Garoto,

Simplemente perfeita a explicação maninho show de bola …

Valew…

Criado 10 de dezembro de 2004
Ultima resposta 11 de dez. de 2004
Respostas 2
Participantes 2