3.6.3 逻辑运算符
逻辑运算符共有3种:“非”、“与”、“或”。逻辑运算符一般与关系运算符结合起来使用,下面将详细地介绍这3个逻辑运算符。
1.NOT运算符
NOT运算符就是一个否定的意思,因为英文中“NOT”就是“不”的意思,在Java中,NOT用符号“!”表示。
【实例3.25】下面看一个简单的例子。
01 ///非逻辑运算符的应用
02 public class data10
03 {
04 public static void main(String[]args)
05 {
06 int a=10;
07 int b=21;
08 System.out.println("说a>b,对吗?"+!(a>b));
09 }
10 }
【代码说明】在程序中,“a>b”是假的,即“false”,但是前面有个“!”否定运算符,将“false”变成了“true”。
【运行效果】
说a>b,对吗?true
2.AND运算符
根据英文“AND”的意思,就知道此运算符是“与”的意思。使用它必须要满足AND前后两个条件。AND运算符在Java中用符号“&&”表示。
【实例3.26】下面看一个简单的实例。
01 ///与逻辑运算符的应用
02 public class data11
03 {
04 public static void main(String[]args)
05 {
06 int a=10;
07 int b=21;
08 System.out.println("认为既a>b又a<b,对吗?"+((a>b)&&(a<b)));
09 }
10 }
【代码说明】“a<b”这个关系运算得出的结果是“true”,而“a>b”这个关系运算得出的结果是“false”。两者用AND这个逻辑运算符连接后,得出的结果是“false”。
【运行效果】
认为既a>b又a<b,对吗?false
为什么会这样呢?下面是AND运算符的原理:
两个操作数只要有一个是“false”,那么结果就是“false”,如果两个操作数都是“true”,那么结果才是“true”。
3.OR运算符
根据英文“OR”的意思,就知道此运算符是“或”的意思,使用它只要满足“OR”前后两个条件中任意一个条件。OR运算符在Java中用符号“||”表示,其原理如下:
两个操作数只要有一个是“true”,那么结果就是“true”,否则结果就是“false”。
【实例3.27】下面看一个简单的例子。
01 public class data12
02 {
03 public static void main(String[]args)
04 {
05 int a=10;
06 int b=21;
07 int c=10;
08 System.out.println("认为既a>b又a<b,对吗?"+((a>=b)||(a==b)));
09 System.out.println("认为既a>b又a=c,对吗?"+((a<b)||(a==c)));
10 }
11 }
【代码说明】上面的程序段中,“a>=b”和“a==b”两个操作数的结果都是“false”,所以或的结果就是“false”,而“a<b”的结果是“true”,“a==c”的结果是“true”,所以结果就是“true”。
【运行效果】
认为既a>b又a<b,对吗?false
认为既a>b又a=c,对吗?true
逻辑运算符主要用于判断条件,例如后面要讲述的判断语句、循环语句的条件判断等。