Não entendi esta linha

6 respostas
M

tenho a seguinte linha:

bem, o trecho (h >= 0 && h < 24) eu entendi, o que eu não entendi é o significado do ? (Ponto de interrogação) no trecho ? h : 0.

6 Respostas

M

Aproveitando o tópico, me expliquem a seguinte linha:

((hora == 12 || hora == 0)? 12 : hora % 12)+
B

Boa noite :grin:

Só para entender…

“h” é maior ou igual a “0” e “h” é menor que “24”? – Pergunta

Se for verdadeiro retorna “h” senão retorna “0”


Por favor me corrijam se estiver errado :?:

B

:lol:

:arrow: Continuando…(Esqueci deste trecho) :oops:

hora é igual a “12” ou hora igual “0”? - Pergunta

Se for verdadeiro retorna 12, senão retorna “hora módulo de 12”;

Um abraço

F

Caro Mr_Browstone, trata-se do operador ternário de Java, uma espécie de if mais compacto, que testa uma determinada expressão e caso ela seja verdadeira retorna a primeira opção, caso contrário retorna a segunda:

expressão ? opção1 : opção2

Lembre-se que ele pode vir aninhado, o que a princípio pode causar uma certa confusão. Mas o importante é que antes do ? venha algo que retorne um valor booleano e que as opções sejam do mesmo tipo da variável que recebe o retorno. E a expressão pode tb vir ou não com parênteses, isso é indiferente, a menos que vc queira determinar a ordem de execução no caso de expressões aninhadas.

:grin:

M

A ficha caiu, obrigado! :grin:

H

Disponha! :lol:

Criado 22 de junho de 2006
Ultima resposta 23 de jun. de 2006
Respostas 6
Participantes 4