继续,这次讨论一下关系运算符与逻辑运算符。
1. 关系运算符
所有的关系运算符,其结果必定是boolean类型的,亦即true或者false。
首先是等于(==)和不等于(!=)
然后是大于(>),小于(<),及与等号构成的组合大于等于(>=)和小于等于(<=),这些概念和数学上基本一样,也和C/C++相同,这里就不啰嗦了。
2. 逻辑运算符
逻辑运算包括了与(&&)、或(||)及非(!),参与运算的式子,也必须是boolean类型的,运算的结果也是boolean类型的。
说到逻辑与和逻辑或,有个概念就是短路方式,如果第一个表达式能够确定最后的结果,则第二个表达式直接被“短路”而不会被计算了,这一点也是和C/C++中是一样的。
3. 条件运算符
这个也可以认为是从C那里继承的遗产,其格式为:
condition?a:b;
条件为真,就计算第一个表达式,条件为假,就计算第二个表达式,并将表达式结果传递出去,例如一个计算较大值的方式:
int a=-50;
int b=-37;
int x=a>b?a:b;
System.out.println(x);