Java逻辑运算符
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Java逻辑运算符逻辑运算符概述
在数学中,⼀个数据x,⼤于3,⼩于6,我们可以这样来进⾏表⽰:3<x<6
在Java中,需要把上⾯的式⼦先进⾏拆解,在进⾏合并表达。
拆解为:x>3和x<6
合并后:x>3&&x<6
&&其实就是⼀个逻辑运算符。
我们可与这样说,逻辑运算符,是⽤来连接关系表达式的运算符。
当然,逻辑运算符也可以直接连接布尔类型的常量或者变量。
逻辑运算符
运算符测试:
1/*
2逻辑运算符
3*/
4public class HelloWorld{
5public static void main(String[] args){
6//定义变量
7int i = 10;
8int j = 20;
9int k = 30;
10
11//”&“(逻辑与)有false则false,⽆false则true
12 System.out.println((i > j) & (i > k)); //false & false
13 System.out.println((i < j) & (i > k)); //true & false
14 System.out.println((i > j) & (i < k)); //false & true
15 System.out.println((i < j) & (i < k)); //true & true
16 System.out.println("-------");
17
18//“|”(逻辑或)有true则true,⽆true则false
19 System.out.println((i > j) | (i > k)); //false | false
20 System.out.println((i < j) | (i > k)); //true | false
21 System.out.println((i > j) | (i < k)); //false | true
22 System.out.println((i < j) | (i < k)); //true | true
23 System.out.println("-------");
24
25//“^”(逻辑异或) 相同为false,不相同为true
26 System.out.println((i > j) ^ (i > k)); //false ^ false
27 System.out.println((i < j) ^ (i > k)); //true ^ false
28 System.out.println((i > j) ^ (i < k)); //false ^ true
29 System.out.println((i < j) ^ (i < k)); //true ^ true
30 System.out.println("-------");
31
32//“!” (逻辑⾮) 奇数是true 偶数是false
33 System.out.println((i > j)); //false
34 System.out.println(!(i > j)); //!false
35 System.out.println(!!(i > j)); //!!false
36 System.out.println((i > j)); //false
37 System.out.println("-------");
38 }
39 }
短路逻辑运算符
注意事项:
逻辑&,⽆论左边真假,右边都要执⾏
短路与&&,如果左边为真,右边执⾏,如果左边为假,右边不执⾏。
逻辑或|,⽆论左边真假,右边都要执⾏。
短路或||,如果左边为假,右边执⾏;如果左边为真,右边不执⾏
最常⽤的逻辑运算符:&&,||,!
实操:
1/*
2逻辑运算符
3*/
4public class HelloWorld{
5public static void main(String[] args){
6//定义变量
7int i = 10;
8int j = 20;
9int k = 30;
10
11//”&&“(短路逻辑与)有false则false,⽆false则true
12 System.out.println((i > j) && (i > k)); //false && false
13 System.out.println((i < j) && (i > k)); //true && false
14 System.out.println((i > j) && (i < k)); //false && true
15 System.out.println((i < j) && (i < k)); //true && true
16 System.out.println("-------");
17
18//“||”(短路逻辑或)有true则true,⽆true则false
19 System.out.println((i > j) || (i > k)); //false || false
20 System.out.println((i < j) || (i > k)); //true || false
21 System.out.println((i > j) || (i < k)); //false || true
22 System.out.println((i < j) || (i < k)); //true || true
23 System.out.println("-------");
24
25//&&和&
26//System.out.println((i++ > 100) & (j++ > 100)); //false & false
27 System.out.println((i++ > 100) && (j++ > 100)); //false && false
28 System.out.println("i:" + i);
29 System.out.println("j:" + j);
30 }
31 }。