Java:检查位是 0 还是 1

2022-08-31 12:38:36

您将使用什么方法来确定表示 2^x 的位是 1 还是 0?


答案 1

我会使用:

if ((value & (1L << x)) != 0)
{
   // The bit was set
}

(你也许可以用更少的括号来逃脱,但我从来不记得按位运算的优先级。


答案 2

另一种选择:

if (BigInteger.valueOf(value).testBit(x)) {
    // ...
}

推荐