位运算符和逻辑运算符

    技术2024-08-17  71

    &(与),|(或),^(异或),~(非)

    位运算符作用在数字上,得把数字转换成二进制

    1.&(与):按位与,只有结果同时为一才为一,否则为零

    3&4

    3:0011

    4:0100

    结果为0000     System.outprintln(3&4) 为0

    2.|(或):按位或,只有结果同时为零才为零,否则为一

    3|4

    3:0011

    4:0100

    结果为0111     System.outprintln(3|4) 为7

    3.^(异或):两边相同为0,不同为为1

    3^4

    3:0011

    4:0100

    结果为 0111   System.out.println(3^4) 为7

    4.~(非):0为1,1为0

    ~3

    3:0011

    ~3:1100

    结果为 1100   System.out.println(~3) 为-4(最前面表示符号,0为正,1为负)

    &&和||

    &&和&中条件表达式都为ture才为ture,否则为false

    ||和|中条件表达式只要有一个满足ture就为ture,全部为false就为false

    语句短路:

    &&:左边表达式为false,就已经表明整个表达式为false,右边的就不用运算或者判断,就会屏蔽掉,

    若左边表达式为ture,就右边的表达式还要判断运算,一直判断完

    ||:左边表达式为ture,就已经表明整个表达式结果为ture,右边的表达式就不会运算了,会被屏蔽掉,

    若左边表达式为false,右边就会继续判断运算,知道运算完。

     

     

     

    Processed: 0.024, SQL: 9