zoukankan      html  css  js  c++  java
  • [javaSE] 位运算符(&|^)

    位运算是直接对二进制进行计算

    左移 <<

    右移 >>

    先把整数换成四个8bit 0000-0000 0000-0000 0000-0000 0000-0000

    这个二进制左右移动,移除来的那头用0补齐

    规律:

    6<<3意思就是 6乘以23次方

    6>>3意思就是6除以23次方

    & 与运算

    | 或运算

    ^ 异或运算

    先把十进制整数转成二进制,两个数上下对应

    6&3 意思就是,对应位置一致,都是1就得1,其他的都是0

    6|3 意思就是,对应位置一致,只要有1就是1,都是0才得0

    6^3 意思就是,对应位置一致,上下相同的得0,不同的得1

    110

    011&与运算

    010 =2

    110

    011 |或运算

    111 =7

    110

    011^异或

    101 =5

    这些位运算可以用来做加密功能

    public class VariableDemo {
    
        /**
         * @param args
         */
        public static void main(String[] args) {
            System.out.println(6<<3);//输出48
            System.out.println(6>>3);//输出 0
            System.out.println(6&3);//输出 2
            System.out.println(6|3);//输出 7
            System.out.println(6^3);//输出 5
        }
    
    }
  • 相关阅读:
    POJ 3349 HASH
    POJ 1840 HASH
    POJ 2785 HASH
    HDU 3926 图的同构
    POJ 2549 二分+HASH
    POJ 2002 统计正方形 HASH
    POJ 1971 统计平行四边形 HASH
    POJ 1635 树的最小表示法/HASH
    POJ 1200 字符串HASH
    ACM学习历程—HDU 1272 小希的迷宫(并查集)
  • 原文地址:https://www.cnblogs.com/taoshihan/p/5507899.html
Copyright © 2011-2022 走看看