1. 程式人生 > >移位操作符 << >> >>>

移位操作符 << >> >>>

按位操作符只可用於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 static
void 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 *///~