位运算

位运算

"<<":箭头指向左边,左移运算,各二进位全部左移若干位,高位丢弃,低位补0

“>>”:箭头指向右边,右移运算:各二进位全部右移若干位,对无符号数,高位补0,有符号数,各编译器处理方法不一样,有的补符号位(算术右移),有的补0(逻辑右移)

public class LogicDemo {
    public static void main(String[] args) {
        /*
        A = 0011 1100
        B = 0000 1101
        位运算:
        A&B = 0000 1100 与
        A|B = 0011 1101 或
        ~B  = 1111 0010 非
        A^B = 0011 0001 异或:相同取0,不相同取1

        面试题:2*8 = 16    2*2*2*2
        位运算效率极高!!
        << *2
        >> /2

        0000 0000   0
        0000 0001   1
        0000 0010   2
        0000 0100   4
        0000 1000   8
        0001 0000   16
        2 ---> 16 向左移了3位
         */
        System.out.println(2<<3);//2左移3位等于16
    }
}

上一篇:HBase 过滤器 及shell 操作过滤器


下一篇:胡哥一分钟课堂第0001期 - Hybrid App(混合开发APP)