Salida de un entero en representación binaria

Descripción del problema: ingrese un número entero y genere el número de 1s en la representación binaria del número. Los números negativos están representados por complementos.

Idea: Obviamente, puede convertir un número entero decimal en una cadena de representación binaria y luego contar el número de "1". Por supuesto, también se puede resolver combinando la operación de división y la operación restante.

Código:

import org.junit.Test;

public class NumberOf1 {
	public int numberOf1(int n) {
		String num = Integer.toBinaryString(n);
		System.out.println(num);//十进制n的二进制字符串表示
		int count = 0;
		for(int i = 0;i < num.length();i++)
			if(num.charAt(i)=='1')
				count++;
		return count;
    }
	@Test
	public void test(){
		System.out.println(numberOf1(15));
	}
}

Salida:

1111
4

Publicado 9 artículos originales · me gusta 0 · visitas 33

Supongo que te gusta

Origin blog.csdn.net/qq_35419705/article/details/105696450
Recomendado
Clasificación