Binäre Zeichenkette in Int in Java umwandeln
-
Konvertieren einer binären Zeichenkette in Int in Java mit
Integer.parseInt()
-
Konvertieren einer binären Zeichenkette in Int in Java mit
Math.pow()
Binär besteht aus zwei Zahlen, 0 und 1, und diese Zahlen werden verwendet, um verschiedene Arten von Anweisungen für Maschinen zu schreiben. Für Menschen ist es jedoch schwierig, diese binären Codes zu lesen. Deshalb gibt es verschiedene Techniken, um das Binärformat in ein für Menschen lesbares Format umzuwandeln.
In diesem Lernprogramm werden wir die zwei Methoden durchgehen, die wir verwenden können, um eine binäre Zeichenkette in eine int
zu konvertieren. Unser Ziel ist es, die binäre Zeichenkette zu analysieren, um eine int
auszugeben, die diese binäre Zahl repräsentiert.
Konvertieren einer binären Zeichenkette in Int in Java mit Integer.parseInt()
Die erste Methode ist Integer.parseInt()
, die die angegebene Zeichenkette in eine int
parst. Wenn wir eine Zeichenkette und einen Radix oder den Basiswert an Integer.parseInt()
übergeben, gibt sie einen int
-Wert zurück, der entsprechend der Radix-Zahl berechnet wird.
Im Beispiel hat binaryString
einen binären Wert, der in einen int
umgewandelt werden muss. Integer.parseInt(binaryString, 2)
erledigt diese Aufgabe für uns. Das erste Argument ist die Zeichenkette, und das zweite Argument ist 2, weil ein Binärwert ein Basis-2-Zahlensystem ist.
Wenn binaryString
einen nicht-binären Wert enthält, dann wird eine NumberFormatException
geworfen und die Fehlermeldung angezeigt.
public class BinaryStringToInt {
public static void main(String[] args) {
try {
String binaryString = "10010";
int foo = Integer.parseInt(binaryString, 2);
System.out.println(foo);
} catch (NumberFormatException e) {
System.out.println("Error: The binary string is not valid");
}
}
}
Ausgabe:
18
Konvertieren einer binären Zeichenkette in Int in Java mit Math.pow()
In dieser Methode werden wir jedes Zeichen von binaryString
überprüfen, da wir wissen, dass ein String in Java eine Folge von Zeichen ist. Wir müssen jedes Zeichen in einer Schleife durchlaufen, bis die Länge des Strings erreicht ist.
Der nächste Schritt besteht darin, das Vorkommen von 1en in binaryString
zu überprüfen, da nur die 1en hinzugefügt werden, wenn wir eine Binärzahl in eine Dezimalzahl konvertieren. Wenn eine 1 vorkommt, wird zunächst die Länge von binaryString
um 1 und um den Wert der Iteration verringert. Im Fall von 101000
ist also das erste Zeichen eine Eins, was bedeutet, dass int len
den Wert 5 haben wird, weil binaryString.length()
6 ist und die Iterationsvariable i
den Wert 0 hat, was bedeutet, dass 6 - 1 - 0 5 sein wird.
Nun, da wir 5 erhalten, und es an Math.pow(base, len)
als zweites Argument übergeben wird, während das erste Argument die Basis sein wird. Es wird die Basis-2 auf die Zahlen anwenden und dann alle Zahlen addieren, was uns das Ergebnis in int
liefert.
public class Main {
public static void main(String[] args) {
String binaryString = "101000";
double convertedDouble = 0;
for (int i = 0; i < binaryString.length(); i++) {
if (binaryString.charAt(i) == '1') {
int len = binaryString.length() - 1 - i;
convertedDouble += Math.pow(2, len);
}
}
int convertedInt = (int) convertedDouble;
System.out.println(convertedInt);
}
}
Ausgabe:
40
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedInVerwandter Artikel - Java String
- So führen Sie die Konvertierung von String in String-Array in Java durch
- Wie entferne ich eine Unterzeichenkette aus einer Zeichenkette in Java
- So konvertieren Sie Byte-Array in Hex-String in Java
- Wie man Java-String in Byte konvertiert
- Generieren Sie eine zufällige Zeichenkette in Java
- Die Swap-Methode in Java