数学运算符

来源:互联网 发布:面纱3.0雾化器最佳数据 编辑:程序博客网 时间:2024/04/28 21:10

位运算

&按位与  1&1=1, 1&0=0, 0&1=0, 0&0=0 

|按位或  1|1 = 1, 1|0 = 1, 0|1 = 1, 0|0 = 0 

^按位异或 1^1=0, 1^0=1, 0^1=1, 0^0=0

~按位非  ~1 = 0, ~0 = 1 

移位运算

   <<左移 1111<<1=1110

   >>右移 1111>>1=0111

技巧:

1.交换ab

    a=a∧b;
    b=b∧a;
    a=a∧b;

2.逆转二进制数

for(i = 0; i < 32; i ++){
        res = (res << 1) + (n & 1);
        n = n >> 1;

}

3.把32位十进制整数转换成16进制数

while(num != 0){
    int tmp = num & 15;
    if(tmp > 9)
    System.out.println((char)(tmp - 10 + 'A'));
    else System.out.println(tmp);
    num >>= 4;
}

0 0
原创粉丝点击