Converter Binario para decimal

Boa Noite!
galera preciso da ajuda de vocês…
É o seguinte, preciso receber 2 números binários do usuário, converter esses dois números para decimal, fazer a soma dos dois decimais e por fim mostrar o resultado em binário novamente.

detalhe: Usando JOptionpane

Assim que faz a conversão, agora só implementar com o que precisa

String bin = "0111";
int numero = Integer.parseInt(bin, 2);//Nome da variavel e tipo, 2 = binary. Converte o binario para int
System.out.println(numero);
		

String bin2 = Integer.toBinaryString(9);//Converter um valor int para binario e atribui o valor a um tipo string
System.out.println(bin2);
1 curtida

vejamos o numero 111 é igual a 7

como eu sei?

1 * 2^2 + 1 * 2^1 + 1 * 2^0 = 4 + 2 + 1 = 7

sendo assim, se vc tem uma string “010100101” vc deveria

  1. pegar o tamanho da string.
  2. fazer um laço desde 0 até o tamanho da string
  3. pegar cada caracter da string e fazer a conversão para potencia de 2

Agora perceba que a posição 0 da string é no começo e quando falamos em binario, a posição da potencia 0 é no fim. vc poderia fazer

int size = bin.length();
for(int i = 0; i< size; i++) {
   int position = size - i;
   char bit      = bin.charAt(position);
   if ( bit == '1' ) {     /*calcula a potencia de 2 ^ posição e faz a soma soma */ }
}