Java位移運算子的原理和作用

2021-06-04 20:28:53 字數 1197 閱讀 3210

*   總體概念: 1.位移運算子只對位進行操作

*             2.只能操作int整型資料型別

*             3.右移補高位,左移補底位

*   >> 有正負之分的右位移運算子,把位元組向右移由右邊運算元指定的位數,如果左邊運算元是正數,則移動的高位補0 ,反之則補1

*   >>>無符號之分的右移運算子,即不管左邊運算元的正負,高位都補0

*   << 左移運算子,向左移動由右邊運算元指定的位數,移動後底位自動補0

作用:對於大資料的2進製運算,位移運算子比那些普通運算子的運算要快很多,因為程式僅僅移動一下而已,不去計算,這樣提高了效率,節省了資源.

這是我現在位置發現的位移運算子的位移作用.可能還有,但是我真的不知道.

system.out.println("1<<2="+(1<<2));

system.out.println("1<<8="+(1<<8));

system.out.println("1<<16="+(1<<16));

system.out.println("1<<24="+(1<<24));

system.out.println("1<<31="+(1<<31));

system.out.println("1<<32="+(1<<32));

1<<2=4

1<<8=256

1<<16=65536

1<<24=16777216

1<<31=-2147483648

1<<32=1

位運算子就是指對整數的二進位制表示中的每一位進行操作,所得的結果一定是整數:

位運算子:

~   位反  ~00110011                           11001100

&   位與 00110011&11101101            00100001

|    位或 00110011|11100001             11110011

^   位異或  00110011^11100001        11010010

<< 左移     00110011<<2                    11001100

>> 右移     10110011 >> 2                  11101100

>>> 不帶符號右移  10110011>>2         00101100

java位移運算子的原理和作用

總體概念 1.位移運算子只對位進行操作 2.只能操作int整型資料型別 3.右移補高位,左移補底位 有正負之分的右位移運算子,把位元組向右移由右邊運算元指定的位數,如果左邊運算元是正數,則移動的高位補0 反之則補1 無符號之分的右移運算子,即不管左邊運算元的正負,高位都補0 左移運算子,向左移動由右...

Java位移運算子原理

總體概念 1.位移運算子只對位進行操作 2.只能操作int整型資料型別 3.右移補高位,左移補底位 有正負之分的右位移運算子,把位元組向右移由右邊運算元指定的位數,如果左邊運算元是正數,則移動的高位補0 反之則補1 無符號之分的右移運算子,即不管左邊運算元的正負,高位都補0 左移運算子,向左移動由右...

java 位移運算子

import org.junit.test 1 左移運算子 2 右移運算子 測試正數 3 右移運算子 測試負數 4 無符號右移 測試正數 5 無符號右移 測試負數 public class weiyitest 右移運算子 測試正數 1010001001 test public void test2 ...