移位操作符 << >> >>>
阿新 • • 發佈:2018-11-12
按位操作符只可用於int型別,其它型別都會轉化位int型別在操作,並且只有數值右端的低5位才右用(因為2^5=32)
<< 左移位操作符,低位補零
>> 右移位操作符,有符號數高位補1,無符號數高位補0
>> java專用右移位操作符;無任正負,都在高位插入0
//: object/Shifting.java package object; import java.util.*; import static net.util.Print.*; public class Shifting{ public staticvoid main(String[] args){ int n1 =-4; print("n1<<2 = "+Integer.toBinaryString(n1<<2)); print("n1<<2 = "+Integer.toBinaryString(n1>>2)); print("n1<<2 = "+Integer.toBinaryString(n1>>>2)); print("n1<<2 = "+(n1>>>2)); } }/* output: n1<<2 = 11111111111111111111111111110000 n1<<2 = 11111111111111111111111111111111 n1<<2 = 111111111111111111111111111111 n1<<2 = 1073741823 *///~