java之运算符优先级

First上图

示例:

以三目运算符为例:

语法:
boolean表达式 ? 表达式1 : 表达式2

例:

int n = 3>4 ? 100 : 200;       解析:先判断数字3和数字4的大小,然后执行?:条件运算符,若为真输出00,若为假输出200

 

例2:

int a = 5;

 int b = 3;

 int c = 1;

int n2 = (a>b && b>c) ? (c++) : (++c);

分析:

先运算括号内的值 (a>b && b>c) 先判断大小,

然后判断true or false,两个&&代表短路与

,首先与(&&)一端为false那么判断就是false,且短路与如果左如果为false那么右边就不执行,

本题左右两侧均为true,返回的值为true ,

那么输出的应当是(C++),

即此时 三元运算符 为 int n2 = c++ 则n2输出的为1

猜你喜欢

转载自www.cnblogs.com/sunmoonyou/p/9316710.html