zoukankan      html  css  js  c++  java
  • Java短路运算符和非短路运算符

      在Java中短路运算符指的是"&&"(与) 和"||"(或) ,非短路运算符指的是"&" 和"|".

      1.1短路运算符:顾名思义,短路运算符具有短路功能.

        |-如果 "&&" 运算符的第一个表达式为false,则第二个表达式就不会执行

        |-如果 "||" 运算符的第一个表达式为true,则第二个表达式就不会执行

      例如: 

    public class Test {
        public static void main(String[] args) {
            int i = 0;
            int j = 0;
            if (++i > 0 || ++j > 0) {
                System.out.println("i的值:" + i);
                System.out.println("j的值:" + j);
            }
        }
    }

      因为++i>0为true  所以++j>0将不会被执行. 

      输出的结果就是:  

    i的值:1
    j的值:0

      1.2非短路运算符

        非短路运算符不管第一个表达式是否可以得出最后结果,都要对第二个表达式进行判断.

    public class Test {
        public static void main(String[] args) {
            int i = 0;
            int j = 0;
            if (++i > 0 | ++j > 0) {
                System.out.println("i的值:" + i);
                System.out.println("j的值:" + j);
            }
        }
    }

        而非短路逻辑运算符的答案是:

    i的值:1
    j的值:1

      1.3总结

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

      但是在判断的时候推荐使用短路运算符进行逻辑判断,因为短路运算符在一定程度上可以提高程序运行的效率

  • 相关阅读:
    Junit单元测试
    团队作业1——团队展示&教辅宝
    结对编程加强版四则运算器
    APP分析之海豚睡眠
    作业1--四则运算
    软件工程-pair work[附加题]
    现代程序设计 homework-02
    《软件工程》individual project开发小记(一)
    现代程序设计 homework-01
    《现代程序设计》9.9日课后总结
  • 原文地址:https://www.cnblogs.com/Triomphe/p/6826575.html
Copyright © 2011-2022 走看看