Java中的Integer.numberOfLeadingZeros()方法

Java中的Integer.numberOfLeadingZeros()方法返回指定int值的二进制补码二进制表示形式中最高位(“最左”)一位之前的零位数目。

我们以以下十进制为例。

int dec = 294;

使用Integer.toBinaryString()计算二进制,如下所示-

Integer.toBinaryString(dec);

现在让我们看一下Integer.numberOfLeadingZeros()方法的实现。

示例

public class Demo {
   public static void main(String []args) {
      int dec = 294;
      System.out.println("Decimal = " + dec);
      System.out.println("Binary = " + Integer.toBinaryString(dec));
      System.out.println("Count of one bits = " + Integer.bitCount(dec));
      System.out.println("Lowest one bit: " + Integer.lowestOneBit(dec));
      System.out.println("Number of leading zeros: " + Integer.numberOfLeadingZeros(dec));
   }
}

输出结果

Decimal = 294
Binary = 100100110
Count of one bits = 4
Lowest one bit: 2
Number of leading zeros: 23