标签:-- strong 位运算 nbsp 左移 参与 结果 不同 运用
Java的运算符,分为四类:
算数运算符、关系运算符、逻辑运算符、位运算符。
算数运算符(9):+ - * / % ++ --
关系运算符(6):== != > >= < <=
逻辑运算符(6):&&(与短路) ||(或短路) !(非) ^ (异或) &(与) |(或)
位运算符(7):&(与运算) | (或运算) ~ (反码) ^(异或运算) >>(右移) <<(左移) >>>(无符号右移)
&:有一个假,即为假
|:有一个真,即为真
^:不同为真,相同为假
一个数异或用一个数两次,结果还是那个数。如7^4^4=7(可以运用在加密里,4为秘钥)
&与&&区别:
2>3 & 2<6 : 无论左边是true还是false,右边都参与运算
2>3 && 2<6 :当左边为false时,右边不参与运算
|与||区别:
2>3 | 2<6 : 无论左边是true还是false,右边都参与运算
2>3 || 2<6 :当左边为true时,右边不参与运算
<<:乘以2的移动位数次幂,如3<<2=3*2的2(移动2位)次方=12
>>:除以2的移动位数次幂,如6<<2=6/2的2(移动2位)次方=1
>>和>>>区别:
>>:最高位补什么由原有数据的最高位值而定。
>>>:无论最高位是什么,右移后,都用0补。
标签:-- strong 位运算 nbsp 左移 参与 结果 不同 运用
原文地址:http://www.cnblogs.com/paulwinflo/p/7676995.html