java位運算基本操做。。

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */ide

/**
 *
 * @author 風停心止
 */
public class bitDemo {
    public static void main(String[] args) {
        System.out.println(1<<3);//計算2*2*2
        //在一個int變量的從右側開始倒數第2位存儲數據1和0
        int bData = 1;
        //倒數第二位存儲1
        bData = bData|(1<<(2-1));//將bData的倒數第二位存1,只需bData|10
        System.out.println(bData);
        bData = bData&(~(1<<(2-1)));//存儲0
        System.out.println(bData);
        //利用疑惑進行簡單的加密與解密
        byte[] b = {1,2,3,4,5};
        byte key = 123;
        for(int i=0;i<b.length;i++){
            b[i] = (byte)(b[i]^key);//加密
            System.out.print(b[i]+"  ");
         }
        System.out.println();
        for(int i=0;i<b.length;i++){
            b[i] = (byte)(b[i]^key);
            System.out.print(b[i]+" ");
        }
        System.out.println();
        //移位操做
        System.out.println("-5>>3 = "+(-5>>3));
        System.out.println("5>>3 = "+(5>>3));
        System.out.println("-5<<3 = "+(-5<<3));
        System.out.println("5<<3 = "+(5<<3));
        //無符號移位操做
        System.out.println("5>>>3 = "+(5>>>3));
        System.out.println("-5>>>3 = "+(-5>>>3));this

    }
}
 加密

相關文章
相關標籤/搜索