解析java中逻辑运算符、自增(自减)运算符、三目运算符

本文详细解析了Java中的逻辑运算符、自增(自减)运算符及三目运算符的使用规则,并通过示例代码展示了不同运算符的特点及其执行过程。

解析java中逻辑运算符、自增(自减)运算符、三目运算符

A.逻辑运算符

a.语法

表达式1 逻辑运算符 表达式2

表达式1和表达式2的结果都必须是布尔类型

b.逻辑运算符的四种情况

b.1 &&(短路与)
语法

表达式1&&表达式2

规则

规则1:只有当表达式1和表达式2的结果都为true,&&的最终结果才会为true

规则2:当表达式1结果为false时,表达式2不会去执行,&&的最终结果为false

规则3:表达式1、表达式2的结果中至少有一个为false时,那么&&的最终结果必然是false

接下来我们去验证一下规则2----表达式2到底执不执行???
示例代码如下所示:

public class Test {
	public static void main(String[] args) {
	   int m=9,n=8;
	   boolean result=m<8&&n++>5;
	   System.out.print("&&的最终结果为: "+result);
	   System.out.print("n的值为: "+n);
//	   如果表达式2不执行的话,那么n=8,若执行n=9;
	}
}

示例代码运行截图如下所示:
在这里插入图片描述

b.2 &(普通与)
语法

表达式1&表达式2

规则

规则1:只有当表达式1和表达式2的结果都为true,&的最终结果才会为true

规则2:当表达式1结果为false时,表达式2也还是会去执行,&的最终结果为false

规则3:表达式1、表达式2的结果中至少有一个为false时,那么&的最终结果必然是false

接下来我们去验证一下规则2----表达式2到底执不执行???
示例代码如下所示:

public class Test {
	public static void main(String[] args) {
	   int m=9,n=8;
	   boolean result=m<8&n++>5;
	   System.out.print("&的最终结果为: "+result);
	   System.out.print("n的值为: "+n);
//	   如果表达式2不执行的话,那么n=8,若执行n=9;
	}
}

示例代码运行截图如下所示:
在这里插入图片描述

b.3 ||(短路或)
语法

表达式1||表达式2

规则

规则1:只有当表达式1和表达式2的结果都为false,&&的最终结果才会为false

规则2:当表达式1结果为true时,表达式2不会去执行,||的最终结果为true

规则3:表达式1、表达式2的结果中至少有一个为true时,那么||的最终结果必然是true

接下来我们去验证一下规则2----表达式2到底执不执行???
示例代码如下所示:

public class Test {
	public static void main(String[] args) {
	   int r=9,s=8;
	   boolean result=r<100||s++>5;
	   System.out.println("||的最终结果为: "+result);
	   System.out.print("s的值为: "+s);
//	   如果表达式2不执行的话,那么s=8,若执行s=9;
	}
}

示例代码运行截图如下所示:
在这里插入图片描述

b.4 |(普通或)
语法

表达式1|表达式2

规则

规则1:只有当表达式1和表达式2的结果都为false,|的最终结果才会为false

规则2:当表达式1结果为true时,表达式2也还是会去执行,|的最终结果为true

规则3:表达式1、表达式2的结果中至少有一个为true时,那么&的最终结果必然是true

接下来我们去验证一下规则2----表达式2到底执不执行???
示例代码如下所示:

public class Test {
	public static void main(String[] args) {
	   int r=9,s=8;
	   boolean result=r<100|s++>5;
	   System.out.println("|的最终结果为: "+result);
	   System.out.print("s的值为: "+s);
//	   如果表达式2不执行的话,那么s=8,若执行s=9;
	}
}

示例代码运行截图如下所示:
在这里插入图片描述

B.自增(自减)运算符

1.++在前

规则:++在前,先加后用

解释:就是先把数加1,然后再去执行当前操作,执行完当前操作后数字还是会加上1

示例代码如下所示:

public class Test {
	public static void main(String[] args) {
	   int r=9,s=8;
	   System.out.println("++r的最终结果为: "+(++r));
//先加再用,因此此时会打印10
	   System.out.println("执行完++r操作后, r的结果为: "+r);
	}
}

示例代码运行截图如下所示:
在这里插入图片描述

2.++在后

规则:++在后,先用后加

解释:就是先把执行当前操作,执行完当前操作后数字才会加上1

示例代码如下所示:

public class Test {
	public static void main(String[] args) {
		  int r=9,s=8;
		   System.out.println("r++的最终结果为: "+(r++));
//先用再加,因此此时会打印9
		   System.out.println("执行完r++操作后, r的结果为: "+r);
	}
}

示例代码运行截图如下所示:
在这里插入图片描述

3.- -在前

规则**:- -在前(变量前),先减后用**

解释:就是先把数减1,然后再去执行当前操作

示例代码如下所示:

public class Test {
	public static void main(String[] args) {
		  int r=9,s=8;
		   System.out.println("--r的最终结果为: "+(--r));
//		   先减后执行当前操作,会打印8
		   System.out.println("执行完--r操作后, r的结果为: "+r);
	}
}

示例代码运行截图如下所示:
在这里插入图片描述

2.- -在后

规则:- -在后,先用后减

解释:就是先执行完当前操作,执行完当前操作后数字才会减去1

示例代码如下所示:

public class Test {
	public static void main(String[] args) {
		  int r=9,s=8;
		   System.out.println("r--的最终结果为: "+(r--));
//		   先减后执行当前操作,会打印8
		   System.out.println("执行完r--操作后, r的结果为: "+r);
	}
}

示例代码运行截图如下所示:
在这里插入图片描述

C.三目运算符

语法:表达式1?表达式2:表达式3;

规则:当表达式1的结果为true时,返回表达式2的结果

​ 当表达式1的结果为false时,返回表达式3的结果

示例代码如下所示:

public class Test02{
	public static void main(String[] args) {
		int a=10,b=90;
		int max=a>b?a:b;
        //因为a<b所以表达式1的结果为false,返回表达式3的结果,即max的值为b
        //int min=a<b?a:b;
		System.out.println("max的值为: "+max);
	}

}

示例代码运行截图如下所示:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SSS4362

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值