java.lang.Integer.numberOfLeadingZeros() 方法返回零位的最高位(“最左側”)之前的數中指定的int值的二進位制二補數表示一位元。
它返回32,如果指定的值沒有一個位元在它的2的二補數表示的,換句話說,如果它等於零。
以下是java.lang.Integer.numberOfLeadingZeros()方法的宣告
public static int numberOfLeadingZeros(int i)
i -- 這是int值。
此方法返回零位的最高位(“最左側”)前在指定的int值的二進位制二補數表示法,或32個1位的數量,如果該值為零。
NA
下面的例子顯示java.lang.Integer.numberOfLeadingZeros()方法的使用。
package com.yiibai; import java.lang.*; public class IntegerDemo { public static void main(String[] args) { int i = 170; System.out.println("Number = " + i); /* returns the string representation of the unsigned integer value represented by the argument in binary (base 2) */ System.out.println("Binary = " + Integer.toBinaryString(i)); // returns the number of one-bits System.out.println("Number of one bits = " + Integer.bitCount(i)); /* returns an int value with at most a single one-bit, in the position of the highest-order ("leftmost") one-bit in the specified int value */ System.out.println("Highest one bit = " + Integer.highestOneBit(i)); /* returns an int value with at most a single one-bit, in the position of the lowest-order ("rightmost") one-bit in the specified int value.*/ System.out.println("Lowest one bit = " + Integer.lowestOneBit(i)); /*returns the number of zero bits preceding the highest-order ("leftmost")one-bit */ System.out.print("Number of leading zeros = "); System.out.println(Integer.numberOfLeadingZeros(i)); } }
讓我們來編譯和執行上面的程式,這將產生以下結果:
Number = 170 Binary = 10101010 Number of one bits = 4 Highest one bit = 128 Lowest one bit = 2 Number of leading zeros = 24