场景其实不多,因为java最小的类型byte包含了8个bit(0/1), 但有些场景需要读写几个bit(直接操作二进制数)时,这时候就要用位运算了,例如:
1.用1bit存储1个布尔量(比如1-true,0-false),1byte就能存8个了,然后用位运算判断和修改其中一位。用途是一个变量存储、传递或返回多个配置,或者存储大量布尔变量时可以节省内存
2.处理字节流,比如处理设备报文,比如常用的16进制只占了4bit,转换的时候会用到位运算
3.写算法,操作二进数的效率很高,可以用位运算的方式提高性能
1.用1bit存储1个布尔量(比如1-true,0-false),1byte就能存8个了,然后用位运算判断和修改其中一位。用途是一个变量存储、传递或返回多个配置,或者存储大量布尔变量时可以节省内存
2.处理字节流,比如处理设备报文,比如常用的16进制只占了4bit,转换的时候会用到位运算
3.写算法,操作二进数的效率很高,可以用位运算的方式提高性能