常用位运算符号
上节介绍bit基础,这节课介绍bit常用基本运算
为什么要使用 | & % ~ 这几种常见的运算?
如果你理解需求是非常简单的
需求1:有八种状态可以叠加 那么每个状态占一个byte位 每个状态可用 | 叠加起来 需求2:要知道已使用那个状态 用 & 执行清位数据 得出的结果必然跟状态相等 需求3:要清除所有状态用 &~ 组合 需求4:在有限的容器里或数组循环使用 用 %,这样做目的是复用资源池
左移 <<
比较常见的是 << 1 或者 << 8 或 << (8 *n)
<< 1 相当于 原来的值 * 2 倍
<< 8 相当于 提高一个byte 位置 常用来网络传输转换
int a = 1; System.out.println(a << 1); System.out.println(a << 8); 2 256
右移 >>
>> 1 相当于 原来的值 / 2
>> 8 相当于 降低一个byte 位置 常用来网络传输转换
System.out.println(2 >> 1); System.out.println(256 >> 8); 1 1