3.2关系运算符
关系运算符用来比较两个值,返回布尔类型的值true或false。关系运算符都是二元运算符,如下表所示:
运算符用法返回true的情况
>op1>op2op1大于op2
>=op1>=op2op1大于或等于op2
<op1<op2op1小于op2
<=op1<=op2op1小于或等于op2
==op1==op2op1与op2相等
!=op1!=op2op1与op2不等
Java中,任何数据类型的数据(包括基本类型和组合类型)都可以通过==或!=来比较是否相等(这与C、C++不同)。
关系运算的结果返回true或false,而不是C、C++中的1或0。
关系运算符常与布尔逻辑运算符一起使用,作为流控制语句的判断条件。如
if(a>b&&b==c)
3.3布尔逻辑运算符
布尔逻辑运算符进行布尔逻辑运算,如下表所示:
op1op2op1&&op2op1||op2!op1
falsefalsefalsefalsetrue
falsetruefalsetruetrue
truefalsefalsetruefalse
truetruetruetruefalse}
·&&、‖为二元运算符,实现逻辑与、逻辑或。
·!为一元运算符,实现逻辑非。
·对于布尔逻辑运算,先求出运算符左边的表达式的值,对或运算如果为true,则整个表达式的结果为true,不必对运算符右边的表达式再进行运算;同样,对与运算,如果左边表达式的值为false,则不必对右边的表达式求值,整个表达式的结果为false。
下面的例子说明了关系运算符和布尔逻辑运算符的使用。
publicclassRelationAndConditionOp{
publicstaticvoidmain(Stringargs[]){
inta=25,b=3;
booleand=a<b;//d=false
System.out.println("a<b="+d);
inte=3;
if(e!=0&&a/e>5)
System.out.println("a/e="+a/e);
intf=0;
if(f!=0&&a/f>5)
System.out.println("a/f="+a/f);
else
System.out.println("f="+f);
}
}
其运行结果为:
C:\>javaRelationAndConditionOp
a<b=false
a/e=8
f=0
注意:上例中,第二个if语句在运行时不会发生除0溢出的错误,因为e!=0为false,所以就不需要对a/e进行运算。
相关推荐:
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |