我从互联网的某个地方得到了这个代码
最终 int 时间 = 80 << 3 + 1;
<<
是 左移运算符
有符号左移运算符“<<”将位模式左移,有符号右移运算符“>>”将位模式右移。位模式由左侧操作数给出,而要移位的位置数由右侧操作数给出。
所以24 << 8
意味着将 24 的二进制值向左移动 8 位位置。
按照参考资料了解更多信息。
这意味着将常量整数值24
左移 8 位。
24 << 8
表示将数字24
左移 8 位,相当于24 * (2^8) = 6144
.
在提供的代码片段中,它将时间编码hh:mm
为整数hh << 8 + mm
。由于一天有 24 小时,因此表示一天中每一分钟的活动的数组需要(24 << 8) + 1
元素。+1
就是使数组索引合法24:00
。