-
Alguém sabe explicar por que não é a A?
-
Até onde eu estudei, & e | não funcionam como && e ||, um deles é operador de curto circuito (o segundo se me lembro bem) e se não for necessário, ele não avalia a segunda condição. Se nada mudou no java, a questão está errada. Deveria ser A
-
Concordo com Bruno.
-
Concordo com todos.Pra mim é a A
-
III. Os operadores & e | funcionam de forma idêntica aos operadores && e ||, mas sempre avaliam ambos os operandos. Correta
Os operadores AND (&&) e OR (&&) são considerados operadores de curto-circuito. Se operando esquerdo retornar false, o operando direito não será verificado já que os dois teriam que ter o valor true para que o true fosse retornado. Já os operadores AND bitwise (&) e OR bitwise (|) avliam o segundo operando não importando se o primeiro operando for igual a true ou false.
Fonte:
OCA Java SE 8 - Guia De Estudos Para O Exame 1Z0-808 - Finegan,Edward; Liguori,Robert - Bookman (pág 91,93)
-
A afirmação III está correta!! Porém com uma redação complicada, antes de analisa-lá, vamos relembrar os operadores &, &&, | , ||:
&&
retorna true se a e b forem ambos true. Senão retorna false. Se a for false, b não é avaliada.
&
retorna true se a e b forem ambos true. Senão retorna false. Ambas expressões a e b são sempre avaliadas.
||
retorna true se a ou b for true. Senão retorna false. Se a for true, b não é avaliada.
|
retorna true se a ou b for true. Senão retorna false. Ambas expressões a e b são sempre avaliadas.
.
.
.
.
Analisando a afirmativa:
III. Os operadores & e | funcionam de forma idêntica aos operadores && e ||, mas sempre avaliam ambos os operandos.
.
.
.Quebrando a questão:
Os operadores & e | funcionam de forma idêntica aos operadores && e || CORRETA! Funcionam de forma idêntica! Pois ambos avaliam duas expressões e retornaram TRUE ou FALSE dependendo dos valores das expressões comparadas.
Mas sempre avaliam ambos os operandos. CORRETA, observe que estamos falando dos operadores & e |, pois eles sempre irão avaliar as expressões, não importa se a primeira expressão retornou TRUE ou FALSE
-
Concordo com o Bruno, operações bit a bit não são a mesma coisa que operações de curto circuito.
"Os operadores &&, || são lógicos, normalmente utilizados para avaliação de expressões lógicas.
Os operadores & e | são bit-wse, e operam com a lógica binária no nível de bits. Onde 0 equivale a falso e 1 a verdadeiro.
Exemplo:
0x55 & 0xf0 => 0x50.
Os operadores && e || atuam com o conceito de curto circuito.
Dependendo do resultado da primeira operação as segundas não são avaliadas. Exemplo:
true || ? == sempre true (não avalia o segundo operando).
false && ? == sempre false (não avalia o segundo operando).
"
< ref.: Diferença entre os operadores lógico && e & - www.guj.com.br/t/diferenca-entre-os-operadores-logico-e/38032 >
O && não precisa avaliar os dois operandos quando o primeiro é falso
-
Muito boa interpretação MAX Q. É exatamente isso. Quando a questão fala "sempre avaliam ambos os operandos", ela está falando dos operadores & e |, o que é verdade!
-
que loucura, operador bit a bit é igual operador lógico agora pqp, tem que forçar muito
-
Errei essa questão mas o gabarito realmente esta correto, o MAX Q já disse tudo o que pegou realmente foi a redação, na prova você tendo outras questões para resolver a pessoa cai nessas cascas de banana.