Wie konvertiert man Zeichen in numerische ASCII-Werte in Java
-
Bestimmen Sie
char
bisint
, um ein Zeichen in einen ASCII-Wert in Java umzuwandeln -
getBytes(StandardCharsets.US_ASCII)
, um den ASCII-Wert von einem Zeichen in Java zu erhalten -
String.chars()
zur Konvertierung von Zeichen in ASCII-Werte in Java 9+
In diesem Artikel werden die einfachsten und effektivsten Methoden zur Umwandlung eines bestimmten Zeichens in einen numerischen ASCII-Wert in Java mit Beispielen vorgestellt.
Bestimmen Sie char
bis int
, um ein Zeichen in einen ASCII-Wert in Java umzuwandeln
Eine der einfachsten Möglichkeiten, das Zeichen in einen numerischen ASCII-Wert umzuwandeln, besteht darin, das Zeichen in int. Da es sich um ein einzelnes Zeichen handelt, können wir nicht mehrere Zeichen verwenden.
Sehen Sie sich das folgende Beispiel an. Beachten Sie, dass wir das Zeichen a
in einfachen Anführungszeichen verwenden, so dass sein Datentyp char
ist.
public class Main {
public static void main(String[] args) {
int asciiValue = 'a';
System.out.println("ASCII Numeric Value: " + asciiValue);
}
}
Ausgabe:
ASCII Numeric Value: 97
getBytes(StandardCharsets.US_ASCII)
, um den ASCII-Wert von einem Zeichen in Java zu erhalten
Damit dieses Beispiel funktioniert, erhalten wir zuerst unser Zeichen als Zeichenkette und konvertieren diese Zeichenkette dann in ein Array von Bytes. StandardCharsets.US_ASCII
wird sicherstellen, dass wir den richtigen Ausgabewert erhalten.
import java.nio.charset.StandardCharsets;
public class Main {
public static void main(String[] args) {
String s = "b";
byte[] bytes = s.getBytes(StandardCharsets.US_ASCII);
System.out.println("ASCII Numeric Value: " + bytes[0]);
}
}
Ausgabe:
ASCII Numeric Value: 98
Der Vorteil dieses Ansatzes besteht darin, dass wir den ASCII-Wert mehrerer Zeichen direkt erhalten können, da die Zeichen in einer Zeichenkette vorliegen.
Wir haben eine Zeichenkette s
mit 4 Zeichen. Wir können numerische ASCII-Werte für alle diese Zeichen erhalten, wie wir es unten getan haben.
import java.nio.charset.StandardCharsets;
public class Main {
public static void main(String[] args) {
String s = "ball";
byte[] bytes = s.getBytes(StandardCharsets.US_ASCII);
System.out.println("ASCII Numeric Value of b: " + bytes[0]);
System.out.println("ASCII Numeric Value of a: " + bytes[1]);
System.out.println("ASCII Numeric Value of l: " + bytes[2]);
System.out.println("ASCII Numeric Value of l: " + bytes[3]);
}
}
Ausgabe:
ASCII Numeric Value: 98
ASCII Numeric Value: 97
ASCII Numeric Value: 108
ASCII Numeric Value: 108
String.chars()
zur Konvertierung von Zeichen in ASCII-Werte in Java 9+
In dieser Methode werden wir eine in Java 9 hinzugefügte API verwenden. Wir können einen IntStream
mit String.chars()
und dann einen Stream von Integer
Objekten mit .boxed()
erhalten. Er wird uns numerisch die ASCII-Werte liefern, die wir dann in eine List<Integer>
zum Durchschleifen einfügen können.
Dieses Beispiel nimmt die Zeichenkette building
als Eingabe und gibt die ASCII-Werte jedes Zeichens in der Zeichenkette aus.
import java.util.List;
import java.util.stream.Collectors;
public class Main {
public static void main(String[] args) {
String stringValue = "building";
List<Integer> listOfIntegers = stringValue.chars().boxed().collect(Collectors.toList());
for (int i : listOfIntegers) {
System.out.println("ASCII value " + i);
}
}
}
Ausgabe:
ASCII value 98
ASCII value 117
ASCII value 105
ASCII value 108
ASCII value 100
ASCII value 105
ASCII value 110
ASCII value 103
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn