Java中的逻辑运算符 & ,&&,| , || .......


public class TestLogic {
    public static void main(String[] args) {
        /*
            逻辑运算符之"和",又被称之为"与","且"
            连接两个boolean表达式,当它们同为true,那么整体返回true;
            只要有一个为false,整体返回假;
            符号:
            && - 逻辑与,是专用的逻辑符号

            & - 位与,本质是位运算符,只是当它左右两端是boolean类型时,
                表现出和"&&"同样的效果。

            区别:
            逻辑与&& 又被称之为"短路运算符",当它判断出第一个表达式为false的时候,
            它不会去执行第2个表达式;
            位与 不短路
         */
//        int a = 10;
//        System.out.println(a < 5 & a++ > 10);
//        System.out.println(a);

        /*
            逻辑运算符之"或"
            连接两个boolean表达式,当两个表达式有一个为true的时候,整体就为true;
            符号
            || - 逻辑或,专用的或符号

            | - 位或,本质也是位运算符,只是当它左右两端是boolean类型时,
                表现出和"||"同样的效果

            区别:
            逻辑或 "||" 又被称之为"短路运算符",当它判断出第一个表达式为true的时候,
            它不会去执行第2个表达式;
            位或"|" 不短路
         */
//        System.out.println(true | true);

        /*
            逻辑运算符之"非"
            用来对一个boolean表达式的结果取反。如果这个表达式是true,取反后就是false;
            反之亦然。
            符号
            !
         */
//        System.out.println(!true);

        /*
            异或,效果是当两个boolean表达式不同的时候返回true,相同的时候返回false;
            符号:
            ^
         */

        System.out.println(true ^ false);
    }

}

你可能感兴趣的:(java)