问下是先从前面的&&开始判别两边然后再变成判别右边||吗
&&和||优先级一样,所以是从左往右依次计算,注意||和&&都有短路特性
&& (逻辑与) 优先级高于||(逻辑或)
例如:
1、return a && b || c
根据a来判断返回值,a是false则肯定返回c;如果b , c都是true,那么就可以根据a来决定b还是c,如果a是false则返回c,如果a是true则返回b。
2、return a || b && c
根据优先级相当于先算b && c ,然后和a相或;如果a是true,则返回a,不论是b或c,如果a是false,则如果b是false,返回b,如果b是true,返回c。
切记他们的短路特性,如果表达式前面有一个值已经确定它的真假,后面的不在计算。
有帮助的话采纳一下哦!