下面的符号是什么:<<?[复制]

IT小君   2022-01-07T01:01:41

可能的重复:
>> 在 Java 中有什么作用?

这个标志有什么作用:<<?这是在 Java 中。

例如, new CustomPermission(1 << 5, 'M');

最好的祝福

评论(5)
IT小君

这是位移

http://download.oracle.com/javase/tutorial/java/nutsandbolts/op3.html

基本上它将左操作数乘以 2 到右操作数的幂

所以 1 << 5 是 1 * 2^5

2022-01-07T01:01:42   回复
IT小君

它是一个位移运算符

这条指令将 00000001 向左移动五位:所以它变成了 00100000

2022-01-07T01:01:42   回复
IT小君

这是一个有符号的左移。您计算的内容基本上是 2^5,因为您将 00000001 向左移动 5 次,结果为 00100000

2022-01-07T01:01:42   回复
IT小君

'<<' 运算符将左边数字的所有位移动右边的值。

例如 1<<5 将等于 32。
这通常用于代替乘以 2 的幂,因为 1<<5 相当于 1*(2^5) 或 1*32

2022-01-07T01:01:42   回复
IT小君

除了其他答案之外,我还要补充一点,位移位常用于使用位掩码的代码中。因此,给定代码片段中的第 5 位具有特定含义,不同于第 3 位。使用“<<”运算符,您可以在逻辑上组合不同的位以给出组合位掩码。

2022-01-07T01:01:43   回复