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 == trueacompanhado == 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!