以下是什么标志:<<?

可能重复:
>>在java中做什么?

这是什么标志:<<? 这是Java。

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

最好的祝福

这是比特档

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

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

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

它是一个移位运算符

该指令向左移动00000001五位:所以它变为00100000

这是一个签名的左移。 你在计算的基本上是2 ^ 5,因为你正在向左移动00000001,这导致00100000

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

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

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