Binaire naar decimale conversie in Java
Getallen met slechts 2 cijfers, 0 en 1, worden binaire getallen genoemd. Ze worden alleen uitgedrukt in het basis 2-nummersysteem. We weten dat het binaire systeem de oorspronkelijke digitale taal is van moderne computers. Maar we zijn meer gewend aan decimale getallen. Natuurlijk kunt u binaire getallen omzetten in decimalen en vice versa. In het onderstaande diagram ziet u een voorbeeld van binaire naar decimale conversie. 10101 is een binair getal dat wordt gebruikt om wiskundige berekeningen uit te leggen. We hoeven alleen maar de 3 eenvoudige stappen te volgen. Neem altijd het cijfer van de rechterkant van een binair getal, vermenigvuldig het met de macht van 2 en tel ze dan gewoon op. U krijgt het decimale getal dat in dit geval 21 is. Er zijn twee manieren om binair naar decimaal te converteren in Java.- Java-methode gebruiken
- Aangepaste logica gebruiken
Java vooraf gebouwde methode
Java biedt ons de methode Integer.parseInt() om de tekenreeks om te zetten in een geheel getal. parseInt() behoort tot de klasse Integer .Syntaxis
public static int parseInt(String binaryNumber, int radix)
Voorbeeld
public class ConvertingBinaryToDecimal {
public static void main(String args[]){
String binaryNumber="10101";
int decimalNumber=Integer.parseInt(binaryNumber,2);
System.out.println(decimalNumber);
}
}
Uitgang
21
Aangepaste logica gebruiken
We kunnen ook een programma in Java schrijven dat een geheel getal ontvangt en converteert naar een decimaal getal. Laten we een voorbeeld bekijken om het te begrijpen.Voorbeeld
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));
}
}
Uitgang
Decimale waarde is: 58 Decimale waarde is: 24
GO TO FULL VERSION