2.15 关系运算符
布尔变量和关系运算联系紧密,特别注意:关系运算符的计算结果只有两种:true或者false。一共有6种关系运算:
关系运算符 | 意义 | 例子 |
---|---|---|
< | 小于 | a<6 |
<= | 小于等于 | a<=6 |
> | 大于 | a>6 |
>= | 大于等于 | a>=6 |
== | 等于 | a==6 |
!= | 不等 | a!=6 |
例如当a的值是7的时候,表达式a>6的值就是True。
int a=7;System.out.println(a> 6)
==指两边是否相等,!=是指两边是否不相等,这些表达式计算的结果,都是True或者False,也就是布尔类型。
这里要注意赋值运算和判断是否相等(==)的区别。赋值运算的意义我们已经知道了,==代表左边是否等于右边,如果相等那么计算结果是True,如果不相等计算结果就是False。
int a=4;int b=5;int c=4;//打印false,"a和b的值相等"这个命题不成立System.out.println(a==b);//打印true,"a和c的值相等"这个命题成立System.out.println(a==c)
不等于是!=。左边和右边不相等,表达式的值就是True。例如5!=4,那么这个表达式的值是True,用通俗的话说就是5不等于4成立。
int a=4;int b=5;int c=4;//打印true,"a和b的值不相等"这个命题成立System.out.println(a != b);//打印false,"a和c的值不相等"这个命题不成立System.out.println(a != c);
下面是等于和不等于常用的场景:
a是3的倍数,意味着a能被3整除,用关系表达式来表达,就是a%3==0
a%3==0的值是true还是false,就要看a的值是什么了
int a=12;//打印true,因为12对3求余数为0, "a是3的倍数" 成立System.out.println(a%3==0);a=14;//打印false,因为14对3求余数为2, "a是3的倍数" 不成立System.out.println(a%3==0);
这是另外一个例子,a不能被6整除,用关系表达式来表达,就是:a%6!=0。也就是a除以6的余数不等于0。如果a的值是6的倍数的时候,这个命题不成立。
int a=12;/*打印false,因为12对6求余数为0,可以整除,"a不能被6整除"不成立 */System.out.println(a%6 != 0);a=14;/* 打印true,因为14对6求余数为2,"a不能被6整除"成立 */System.out.println(a%6 != 0);