Java逻辑运算符——短路与(&&)和短路或(||)

Java逻辑运算符——短路与和短路或

Java逻辑运算符中有两种特殊的存在:短路与(&&)、短路或(||)。

短路与(&&):boolean b = 条件1 && 条件2;
运算过程:当条件1的值为false时,执行短路运算(不再对条件2进行判断),直接返回b的值为false;当条件1的值为true时,再对条件2进行判断,若条件2的值为true,则返回b的值为true,若条件2的值为false,则返回b的值为false。

int m = 1,n = 2;
  
  boolean a = m>2;//false
  boolean b = m<n;//true
  /*a为false,输出结果为false,执行短路或后不执行(m++>0),
  输出m的值查看m++执行情况*/
  System.out.println(a&&(m++>0));
  System.out.println(m);
  /*b值为true,执行短路或后继续执行(n++>0),(n++>0)为true,
  输出结果为true
  输出n的值,查看n++执行情况*/
  System.out.println(b&&(n++>0));
  System.out.println(n);

输出结果:

false
1
true
3

短路或(||):boolean b = 条件1 || 条件2;
运算过程:当条件1的值为true时,执行短路运算(不再对条件2进行判断),直接返回b的值为true;当条件1的值为false时,再对条件2进行判断,若条件2的值为true,则返回b的值为true,若条件2的值为false,则返回b的值为false。

int m = 1,n = 2;
  
  boolean a = m>0;//true
  boolean b = m>n;//false
  /*a为true,输出结果为true,执行短路或后不执行(m++>0),
  输出m的值查看m++执行情况*/
  System.out.println(a||(m++>0));
  System.out.println(m);
  /*b值为false,执行短路或后继续执行(n++>0),(n++>0)为true,
  输出结果为true
  输出n的值,查看n++执行情况*/
  System.out.println(b||(n++>0));
  System.out.println(n);

输出结果:

true
1
true
3

结论:Java逻辑运算中,相较于逻辑与(&)和逻辑或(|),短路与(&&)和短路或(||)在某些情况下能减少代码的运算量,提高代码性能。

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值