在术语关系运算符(relational operator)和逻辑运算符(logical operator)中.关系是指值与值之间的相互关系,逻辑是指把真值和假值连接在一起的方式.关系运算符产生的结果是真或假,所以他们经常与逻辑运算符一起使用,出于这一原因,我们这里对这两种运算符一起进行讨论.
关系运算符如下表所示:
运算符
|
含义
|
==
|
等于
|
<
|
小于
|
!=
|
不等于
|
>=
|
大于等于
|
>
|
大于
|
<=
|
小于等于
|
逻辑运算符如下表所示:
运算符
|
含义
|
&
|
与
|
|
|
或
|
^
|
异或
|
||
|
短路或
|
&&
|
短路与
|
!
|
非
|
关系运算符与逻辑运算符的结果是boolean类型的值.
在Java中,所有的对线都可以使用==和!=进行等于或不等于比较.然而,比较运算符<,>,<=,>=则只能用于支持顺序关系的类型.因此,所有的关系运算符都可用于数值类型和char类型.然而,boolean类型的值只可以用于进行等于或不等于比较,因为true和false值是无序的.例如,在Java中 true>false是无意义的.
对于逻辑运算符,操作数必须是boolean类型,逻辑运算的结果也必须是boolean类型.逻辑运算符&,|,^和!按照下表所示的真值表进行基本的逻辑运算AND.OR.XOR.NOT
P
|
Q
|
P&Q
|
P|Q
|
P^Q
|
!P
|
false
|
false
|
false
|
false
|
false
|
true
|
true
|
false
|
false
|
true
|
true
|
false
|
fasle
|
true
|
false
|
true
|
true
|
true
|
true
|
true
|
true
|
true
|
false
|
false
|