Java Long - numberOfLeadingZeros() Method
The java.lang.Long.numberOfLeadingZeros() method returns the number of zero bits preceding the highest-order ("leftmost") one-bit in the two's complement binary representation of the specified long value. The method returns 64 if the specified value has no one-bits in its two's complement representation, in other words if it is equal to zero.
For all positive long values x:
- floor(log2(x)) = 63 - numberOfLeadingZeros(x)
- ceil(log2(x)) = 64 - numberOfLeadingZeros(x - 1)
Syntax
public static int numberOfLeadingZeros(long i)
Parameters
i |
Specify the value whose number of leading zeros is to be computed. |
Return Value
Returns the number of zero bits preceding the highest-order ("leftmost") one-bit in the two's complement binary representation of the specified long value, or 64 if the value is equal to zero.
Exception
NA.
Example:
In the example below, the java.lang.Long.numberOfLeadingZeros() method returns the number of zero bits preceding the leftmost one-bit in the two's complement binary representation of the given long value.
import java.lang.*; public class MyClass { public static void main(String[] args) { //creating a long value long x = 75; //printing value of x, its binary //representation and numberOfLeadingZeros System.out.println("The values of x is: " + x); System.out.print("The binary representation of x is: "); System.out.println(Long.toBinaryString(x)); System.out.print("The numberOfLeadingZeros is: "); System.out.println(Long.numberOfLeadingZeros(x)); } }
The output of the above code will be:
The values of x is: 75 The binary representation of x is: 1001011 The numberOfLeadingZeros is: 57
❮ Java.lang - Long