java.lang.Long.bitCount() es una función integrada en Java que devuelve el número de bits establecidos en una representación binaria de un número. Acepta un solo número de parámetro obligatorio cuyo número de bits establecidos se devuelve.
Sintaxis:
public static long bitCount(long num) Parameters: num - the number passed Returns: the number of set bits in the binary representation of the number
Ejemplos:
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 = 2
El siguiente programa ilustra la función java.lang.Long.bitCount():
Programa 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)); } }
Producción:
binary representation = 10000001000 no of set bits = 2
Programa 2: cuando se pasa un número negativo en el argumento
// 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)); } }
Producción:
binary representation = 1111111111111111111111111111111111111111111111111111101111111000 no of set bits = 60
Error: la función devuelve un error si se pasa como argumento cualquier tipo de datos que no sea largo.
Programa 3: cuando se pasa un número decimal como argumento
// 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)); } }
Producción:
prog.java:15: error: incompatible types: possible lossy conversion from double to long System.out.println("no of set bits = " + Long.bitCount(11.23));
Programa 4: cuando el número de string se pasa como argumento
// 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")); } }
Producción:
prog.java:15: error: incompatible types: String cannot be converted to long System.out.println("no of set bits = " + Long.bitCount("12"));