Ze

Zeichen in Java

16 Übungen

Über Zeichen

Der primitive Typ char in Java ist eine 16-Bit-Darstellung eines einzelnen Unicode-Zeichens.

Note

Der Typ char basiert auf der ursprünglichen Unicode-Spezifikation, die 16 Bit zur Darstellung von Zeichen verwendete. Das reicht aus, um die meisten gängigen Buchstaben abzudecken, und deckt Zeichen im Bereich 0x0000 bis 0xFFFF ab. Seitdem hat die Spezifikation den Bereich der möglichen Zeichen bis auf 0x01FFFF erweitert.

Mehrere chars können zusammen einen String bilden, wie zum Beispiel "word", oder chars können unabhängig voneinander verarbeitet werden. Ein char-Literal wird von einfachen Anführungszeichen umschlossen (z. B. 'A').

char lowerA = 'a';
char upperB = 'B';

Die chars eines Strings auslesen

Die Methode String.toCharArray gibt die chars eines String als Array zurück. Wie in Arrays erwähnt, kannst du eine for-Schleife verwenden, um über das Array zu iterieren.

String text = "Hello";
char[] asArray = text.toCharArray();

for (char ch: asArray) {
    System.out.println(ch);
}

// Outputs:
// H
// e
// l
// l
// o

Die Klasse Character

Es gibt viele eingebaute Bibliotheksmethoden, um chars zu untersuchen und zu manipulieren. Du findest sie als statische Methoden der Klasse java.lang.Character. Hier sind einige Beispiele:

Character.isWhitespace(' ');    // true
Character.isWhitespace('#');    // false

Character.isLetter('a');        // true
Character.isLetter('3');        // false

Character.isDigit('6');         // true
Character.isDigit('?');         // false
Note

Einige Methoden der Klasse Character haben eine Überladung, sodass sie entweder ein char oder ein int annehmen können. Zum Beispiel hat isDigit eine, die ein char annimmt, und eine andere, die ein int annimmt. Wie bereits erwähnt, kann der Typ char nur die Zeichen im Bereich von 0x0000 bis 0xFFFF darstellen. Das int hingegen kann alle Zeichen darstellen, daher die int-Überladungen.

Ein char zu einem String hinzufügen

Mit dem Operator + kannst du ein char zu einem String hinzufügen.

'a' + " banana"     // => "a banana"
"banana " + 'a'     // => "banana a"
Caution

Pass auf, dass du + nicht verwendest, um zwei chars zu einem String zusammenzufügen! Wenn du zwei chars auf diese Weise addierst, erhältst du ein int, kein String! Zum Beispiel:

'b' + 'c';
// => 197 (not the String "bc")

Das liegt daran, dass Java das char zu einem int hochstuft (siehe 4.2 Primitive Typen und Werte der Java Language Specification).

Wenn jedoch viele Zeichen hinzugefügt werden sollen, kann es effizienter sein, stattdessen einen StringBuilder zu verwenden:

StringBuilder builder = new StringBuilder();
builder.append('a');
builder.append('b');
builder.append('c');

String builtString = builder.toString();
// => abc
Über GitHub bearbeiten Der Link öffnet sich in einem neuen Fenster oder Tab

Lerne Zeichen