Qual a ordem de precedência dos operadores lógicos e dos comparadores? Por exemplo, na expressão
if (maiorDeIdade == true || acompanhado == false)
{
}
Há algum risco de se avaliado primeiro o trecho true || acompanhado
?
Qual a ordem de precedência dos operadores lógicos e dos comparadores? Por exemplo, na expressão
if (maiorDeIdade == true || acompanhado == false)
{
}
Há algum risco de se avaliado primeiro o trecho true || acompanhado
?
Olá, Adonay!
A precedência segue esta ordem (do mais alto para o mais baixo):
Na sua expressão os comparadores ==
serão avaliados primeiro, seguidos pelo operador lógico ||
. Portanto, a expressão será avaliada da seguinte forma:
maiorDeIdade == true
acompanhado == false
||
.Assim, não há risco de true || acompanhado
ser avaliado primeiro. A expressão será corretamente interpretada como:
if ((maiorDeIdade == true) || (acompanhado == false)) {
// código
}
Espero ter ajudado e reforço que em casos de dúvidas, conte sempre com o fórum da comunidade Alura! Bons estudos!
Sucesso ✨
Um grande abraço e até mais!