Java 短路计算 && ||

本文详细介绍了短路运算符在逻辑表达式中的工作原理,包括&&和||的短路特性,以及如何利用这些特性进行代码优化,避免不必要的计算并提高效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

所谓短路计算,是指系统从左至右进行逻辑表达式的计算,一旦出现计算结果已经确定的情况,则计算过程即被终止。

短路运算符只能用于逻辑表达式内,非短路运算符可用于位表达式和逻辑表达式内。也可以说:短路运算只能操作布尔型的,而非短路运算不仅可以操作布尔型,而且可以操作数值型。


什么是&&和||的短路运算?

1、&& 和 || 属于逻辑运算符。

表达式1 || 表达式2

  • 只要任意表达式为true,则整个表达式的运算结果为true。

表达式1 && 表达式2

  • 必须所有表达式都为true,则整个表达式的运算结果才为true。任意表达式为false,则整个表达式结果为false。

 

2、&& 和 || 的短路运算。

表达式从左到右执行,如果前面的表达式运算结果可以判断整个表达式的结果,那么就不会进行后面表达式的运算判断。

表达式1 || 表达式2 || 表达式3  || ... || 表达式n

  • 如果表达式1的运算结果为true,则整个表达式的结果为true。同时后面的表达式不在执行。
  • 如果表达式1的运算结果为false,则根据表达式2的运算结果继续判断。

表达式1 && 表达式2 && 表达式3 && ... && 表达式n

  • 如果表达式1的运算结果为false,则整个表达式的结果为false。同时后面的表达式不在执行。
  • 如果表达式1的运算结果为true,则根据表达式2的运算结果继续判断。

&& 和 || 的短路运算有什么用?

  1. 由于 && 和 || 的表达式存在短路运算现象,在短路之后不会对后面的表达式进行运算,所以含有 && 和 || 的表达式最好不要进行变量的赋值和运算操作,可以先计算好每个表达式的结果,直接拿结果进行 && 和 || 的运算。
  2. 在代码编写的时候就要注意这一点,以防由于 && 和 || 的短路运算导致写出来的代码运算结果与预期的不同。
  3. 把能快速确定整个表达式结果true或false的表达式放在前面,这样由于短路运算后面的表达式可能不会被运算到,节省处理器的运算时间。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值