存在的多个逻辑与(&&)和逻辑或(||)的执行顺序

   今天在处理问题的过程中,遇到了 true || true && false 的问题,我习惯性的给出的答案结果为 false,看的出我的思路是从左往右执行的. 显而易见我是错误的

    相信大家对于单个逻辑操作应该没什么问题,程序中经常能够见到,这里我们直接单元测试来直接看下输出结果

//输出的结果:true
System.out.println(true || true && false);

总结:

从上述的结果看的出,执行的顺序并不是从左往右执行的,而是因为逻辑与(&&)的优先级高于逻辑或(||),所以先执行了“&&”再执行了“||”。

  • 8
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
逻辑与(&&)和逻辑或(||)是Java中常见的逻辑运算符,它们有以下区别: 1. 短路运算: - 逻辑与(&&):如果第一个表达式为false,则不会执行第二个表达式,因为无论第二个表达式的结果如何,整个表达式都会被判定为false。 - 逻辑或(||):如果第一个表达式为true,则不会执行第二个表达式,因为无论第二个表达式的结果如何,整个表达式都会被判定为true。 2. 执行顺序: - 逻辑与(&&):执行第一个表达式,如果第一个表达式为true,则继续执行第二个表达式,最终返回第二个表达式的结果。 - 逻辑或(||):执行第一个表达式,如果第一个表达式为false,则继续执行第二个表达式,最终返回第二个表达式的结果。 在实际开发中,逻辑与(&&)和逻辑或(||)经常用于条件判断和控制流程。例如,可以使用逻辑与(&&)来判断多个条件是否同时满足,只有当所有条件都为true时,整个表达式才会返回true。而逻辑或(||)可以用于判断多个条件中是否至少有一个满足,只要有一个条件为true,整个表达式就会返回true。 以下是一个示例代码: ```java int a = 5; int b = 10; int c = 15; // 使用逻辑与(&&)判断多个条件是否同时满足 if (a > 0 && b > 0 && c > 0) { System.out.println("所有数都大于0");} // 使用逻辑或(||)判断多个条件中是否至少有一个满足 if (a > 0 || b > 0 || c > 0) { System.out.println("至少有一个数大于0"); } ```

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值