Java中,&&与&,||与|的区别

Posted luoshui

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java中,&&与&,||与|的区别相关的知识,希望对你有一定的参考价值。

逻辑运算符(Java中)有四类:

 &&(短路与),&

    ||(短路或),   |

短路与是JAVA语言中的一个逻辑运算符,记作&&,与编程语言中的与逻辑相似,但具有短路性质。
符号为:&&。
A&&B, 当A为false时,不去计算B的值而直接返回false;当A为true时,计算B的值。(来自百度百科)
而A&B,需要计算A和B的值才会返回值。
简单的来说:
      &&和&都是表示与,区别是&&若第一个条件不满足,后面条件就不再判断。而&要对所有的条件都进行判断。
例1
public class Demo{

public static void main(String[] args) {
        int i = 4;
        if ((i++ > 6) & (i++ < 9)) {
            System.out.println(i);
            System.out.println("if为真");
        }
        System.out.println(i);
    }
}

运行结果为 : 6

因为 i 自加两次。

例2:

public class Demo{

public static void main(String[] args) {
        int i = 4;
        if ((i++ > 6) && (i++ < 9)) {
            System.out.println(i);
            System.out.println("if为真");
        }
        System.out.println(i);
    }
}

运行结果为 : 5

因为 i 自加一次。

 

同理,| 和 || 也是类似情况。

百度百科:

  短路或是JAVA语言中的一个逻辑运算符,记作||。所谓短路,即在第一项为true的情况下,不再进行第二项的判断。

  a||b:只有a与b都为false,结果才为false;有一个为true,结果为true。

简单的来说:

      || 和 | 都是表示与,区别是 || 若第一个条件不满足,后面条件就不再判断。而 | 要对所有的条件都进行判断。

 

 

以上是关于Java中,&&与&,||与|的区别的主要内容,如果未能解决你的问题,请参考以下文章

Java中,&&与&,||与|的区别

Java中 &&与&,||与|的区别

001 Java中&与&&的区别

java中&与&&的区别

Java语言中:++a与a++小练习 &与&&小练习 |与||小练习 boolean类型小练习

Java中&|&&||详解