String[] elements = {“for” , “tea” , “too” }; String first = (elements.length > 0)? elements[0]:null;
A. Compilation fails
B. An exception is thrown at runtime
C. The variable first is set to null
D. The variable first set to elements[0]
A resposta é a letra D.
Mas , não estou entendo nadaaaaaaa dessa questao! ; primeiro o que o coringa(interrogacao) esta fazendo ali? e os :(dois pontos) ?
no Use a cabeca e o SCJP , não mencionam nada sobre isso…
Será que alguma pessoa de bem pode me ajuda nessa questao,no entendimento dela…
Quero entender a resolucao!
Abracao!!!
(elements.length > 0) —> a condição
?
se a condição for verdadeira
:
se a condição for falsa
isso é a mesma coisa que
if (elements.length > 0)
se a condição for verdadeira
else
se a condição for falsa
Você está estudando para uma certificação, pq isso é basico de sintaxe, talvez sejá melhor vc dar uma estudada primeiro em estruturas condicionais do java.
abraços e boa sorte!
T
tma
Olha só:
isso nada mais é que um if:
if (elements.length >0){
first = elements[0];
else
first = null;
Se a condição elements.length > 0 for true first recebe o primeiro valor depois do ?, se a condição falhar first recebe null.
Sacou?
Thiago_da_Santa
Valeu galera…
Agora a tarde quando peguei o livro SCJP,abri bem na pagina de operador condicional…
Afff…foda… prova chegando,essa semana…
Ansiedade,nevorsismo…
Acabei esquecendo essa besteira…
valeu mesmo galera…
C
clone_zealot
totalmente offtopic, mas sou obrigado a falar:
cara, tu vai fazer a prova e ainda não conhece a sintaxe do Java?
Velho, tu é muito macho…
Fabio_Kym_Nascimento
Esse é o famoso operador ternário, como muitos já disseram aqui ele faz as vezes de um if simples:
valor = condição ? : ;
No seu exemplo, a condição é o vetor ter no minimo 1 elemento, veja que os parenteses são opcionais:
String first = (elements.length) > 0 ? elements[0] : null;
String first = elements.length > 0 ? elements[0] : null;
Acho vale a pena citar o seguinte: O operador ternário em Java retorna um valor (ou um objeto) que deve obrigatoriamente ser atribuído, estou citando isso porque na maioria das outras linguagens a atribuição não é obrigatória e eu sempre me ferro no Java por isso