Wie konvertiert man Zeichen in numerische ASCII-Werte in Java

Rupam Yadav 12 Oktober 2023
  1. Bestimmen Sie char bis int, um ein Zeichen in einen ASCII-Wert in Java umzuwandeln
  2. getBytes(StandardCharsets.US_ASCII), um den ASCII-Wert von einem Zeichen in Java zu erhalten
  3. String.chars() zur Konvertierung von Zeichen in ASCII-Werte in Java 9+
Wie konvertiert man Zeichen in numerische ASCII-Werte in Java

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 Yadav avatar Rupam Yadav avatar

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

Verwandter Artikel - Java ASCII

Verwandter Artikel - Java Char