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


逻辑运算符主要用于判断条件,例如后面要讲述的判断语句、循环语句的条件判断等。