java.lang.Long.bitCount() is a built in function in Java that returns the number of set bits in a binary representation of a number. It accepts a single mandatory parameter number whose number of set bits is returned.
Syntax:
java
Output:
java
Output:
java
Output:
java
public static long bitCount(long num) Parameters: num - the number passed Returns: the number of set bits in the binary representation of the numberExamples:
Input : 8 Output : 1 Explanation: Binary representation : 1000 No of set bits=1 Input : 1032 Output : 2 Explanation: binary representation = 10000001000 no of set bits = 2The program below illustrates the java.lang.Long.bitCount() function: Program 1:
// Java program that demonstrates the use of
// Long.bitCount() function
// include lang package
import java.lang.*;
public class GFG {
public static void main(String[] args)
{
long l = 1032;
// prints the binary representation of the number
System.out.println("binary representation = " + Long.toBinaryString(l));
// prints the number of set bits
System.out.println("no of set bits = " + Long.bitCount(l));
}
}
binary representation = 10000001000 no of set bits = 2Program 2: When a negative number is passed in the argument
// Java program that demonstrates the use of
// Long.bitCount() function
// Negative number
// include lang package
import java.lang.*;
public class GFG {
public static void main(String[] args)
{
long l = -1032;
// prints the binary representation of the number
System.out.println("binary representation = " + Long.toBinaryString(l));
// prints the number of set bits
System.out.println("no of set bits = " + Long.bitCount(l));
}
}
binary representation = 1111111111111111111111111111111111111111111111111111101111111000 no of set bits = 60Error: The function returns an error if any data-type other than long is passed as an argument. Program 3: When decimal number is passed as an argument
// Java program that demonstrates the use of
// Long.bitCount() function
// decimal number
// include lang package
import java.lang.*;
public class GFG {
public static void main(String[] args)
{
// prints the number of set bits
System.out.println("no of set bits = " + Long.bitCount(11.23));
}
}
prog.java:15: error: incompatible types: possible lossy conversion from double to long
System.out.println("no of set bits = " + Long.bitCount(11.23));
Program 4: When string number is passed as an argument
// Java program that demonstrates the use of
// Long.bitCount() function
// string number
// include lang package
import java.lang.*;
public class GFG {
public static void main(String[] args)
{
// prints the number of set bits
System.out.println("no of set bits = " + Long.bitCount("12"));
}
}
Output:
prog.java:15: error: incompatible types: String cannot be converted to long
System.out.println("no of set bits = " + Long.bitCount("12"));