Conversão de binário para decimal em Java
Números que possuem apenas 2 dígitos, 0 e 1, são chamados de números binários. Eles são expressos apenas no sistema numérico de base 2. Sabemos que o sistema binário é a linguagem digital nativa dos computadores modernos. Mas estamos mais acostumados com números decimais. Claro, você pode converter números binários em decimais e vice-versa. No diagrama abaixo, você pode ver um exemplo de conversão de binário para decimal. 10101 é um número binário usado para explicar cálculos matemáticos. Só precisamos seguir os 3 passos simples. Sempre pegue o dígito do lado direito de um número binário, multiplique-o pela potência de 2 e simplesmente adicione-os. Você obterá o número decimal que é 21 neste caso. Existem duas maneiras de converter binário para decimal em java.- Usando o método Java
- Usando lógica personalizada
Método Java pré-construído
Java nos fornece o método Integer.parseInt() para converter a string em um inteiro. O método parseInt() pertence à classe Integer .Sintaxe
public static int parseInt(String binaryNumber, int radix)
Exemplo
public class ConvertingBinaryToDecimal {
public static void main(String args[]){
String binaryNumber="10101";
int decimalNumber=Integer.parseInt(binaryNumber,2);
System.out.println(decimalNumber);
}
}
Saída
21
Usando lógica personalizada
Também podemos escrever um programa em Java que receba um inteiro e o converta em um número decimal. Vejamos um exemplo para entendê-lo.Exemplo
public class ConvertingBinaryToDecimal {
// function for converting binary to decimal number
public static int getDecimalNumber(int binaryNumber){
int decimalNumber = 0;
int power = 0;
while(binaryNumber > 0){
//taking the rightmost digit from binaryNumber
int temp = binaryNumber%10;
//now multiplying the digit and adding it to decimalNumber variable
decimalNumber += temp*Math.pow(2, power);
//removing the rightmost digit from binaryNumber variable
binaryNumber = binaryNumber/10;
//incrementing the power variable by 1 to be used as power for 2
power++;
}
return decimalNumber;
}
public static void main(String args[]){
System.out.println("Decimal value is: "+getDecimalNumber(111010));
System.out.println("Decimal value is: "+getDecimalNumber(001010));
}
}
Saída
O valor decimal é: 58 O valor decimal é: 24
GO TO FULL VERSION