>表示大于,如:if(a>b)...結果是boolean類型
>>表示帶符號右移,如:int i=15; i>>2的結果是3,移出的部分將被拋棄。
轉為二進制的形式可能更好理解,0000 1111(15)右移2位的結果是0000 0011(3),0001 1010(18)右移3位的結果是0000 0011(3)。
>>>無符號右移:
按二進制形式把所有的數字向右移動對應巍峨位數,低位移出(舍棄),高位的空位補零。對于正數來說和帶符號右移相同,對于負數來說不同。
其他結構和>>相似。
測試代碼如下:
public class Test{ public static void main(String[] args){ System.out.println("1、以下測試>:"); int a = 1, b = 2; System.out.println(a > b); System.out.println("/n2、以下測試>>:"); System.out.println("15 >> 2 = " + (15 >> 2)); System.out.println("/n3、以下測試>>>:"); for (int i = 0; i < 10; i++){ for (int j = 0; j < 500; j = j + 5){ System.out.println(j / (int) (Math.pow(2, i))); System.out.println(j >>> i); } } } }
JAVA中其他位運算符:
~ 按位非(NOT)(一元運算)
& 按位與(AND)
| 按位或(OR)
^ 按位異或(XOR)
>> 右移
>>> 右移,左邊空出的位以0填充
<< 左移
&= 按位與賦值
|= 按位或賦值
^= 按位異或賦值
>>= 右移賦值
>>>= 右移賦值,左邊空出的位以0填充
<<= 左移賦值
新聞熱點
疑難解答