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