第十四届蓝桥杯集训——JavaC组第六篇——关系运算符
关系运算符列表
运算符 |
名称 |
示例 |
功能 |
< |
小于 |
a<b |
a小于b时返回真;否则返回假 |
<= |
小于等于 |
a<=b |
a小于等于b时返回真;否则返回假 |
> |
大于 |
a>b |
a大于b时返回真;否则返回假 |
>= |
大于等于 |
a>=b |
a大于等于b时返回真;否则返回假 |
== |
等于 |
a==b |
a等于b时返回真;否则返回假 |
!= |
不等于 |
a!=b |
a不等于b时返回真;否则返回假 |
可以看到上面的列表中返回的值都是【真】/【假】,那么我们也就知道了肯定返回的是布尔值了。关系运算符最后的结果就是返回【真】/【假】。
关系运算符返回值
关系运算符的值只能是true或false。
关系运算符的值为真时,结果值都为true。
关系运算符的值为假时,结果值都为false。
返回值测试
我们用基础的判断来看一下效果,在这类效果下很轻易的就能看到其返回的具体结果:
package com.item.action; public class Action { public static void main(String[] args) { boolean isf=5>6;//由于5肯定小于6,故而返回值应该是false System.out.println(isf); } }
当然,这只是一个基础的示例,那么,我们来看看这些符号返回的结果是否都是布尔类型:
package com.item.action; public class Action { public static void main(String[] args) { boolean isf1=5<6; boolean isf2=5<=6; boolean isf3=5>6; boolean isf4=5>=6; boolean isf5=5==6; boolean isf6=5!=6; System.out.println(isf1); System.out.println(isf2); System.out.println(isf3); System.out.println(isf4); System.out.println(isf5); System.out.println(isf6); } }
输出结果:
注意内容
- 前4种关系运算符的优先级别相同,后两种也相同。前四种高于后两种。
- 关系运算符的优先级低于算术运算符。
- 关系运算符的优先级高于赋值运算符。
优先级测试
优先级测试就得看左右两侧了,我们已知【前4种关系运算符的优先级别相同,后两种也相同。前四种高于后两种】,那么可以肯定的是,我们会先计算【==】号与【!=】左右两侧的计算,计算完成后进行判断结果:
package com.item.action; public class Action { public static void main(String[] args) { //如果没有优先级则会判断出错 //有先计算<,<=,>,>=就会正常执行后再使用!=与==进行判断 boolean isf=5!=6 == 5<6; System.out.println(isf); } }
结果为:
由于5!=6后执行,(5!=6==5<6)前两个符号的有限度都没有5<6高,会出现这样的结果:
5!=6==true,在这种情况下就先行从左侧计算【5!=6】为true, 最后会显现【true==true】,所以出现的结果是【true】。