In diesem Kapitel stellen wir Ihnen hauptsächlich die Java-Character-Klasse und die Verwendung der Character-Klasse vor.
Bei der Verwendung von Zeichen verwenden wir normalerweise den integrierten Datentyp char.
char ch = 'a'; // Unicode for uppercase Greek omega character char uniChar = 'u039A'; // 字符数组char[] charArray = { 'a', 'b', 'c', 'd', 'e' };
Im tatsächlichen Entwicklungsprozess stoßen wir jedoch häufig auf Situationen, in denen wir Objekte anstelle integrierter Datentypen verwenden müssen. Um dieses Problem zu lösen, stellt die Java-Sprache eine Wrapper-Klasse Character-Klasse für den integrierten Datentyp char bereit.
Verwendung der Character-Klasse: Die Character-Klasse bietet eine Reihe von Methoden zum Bearbeiten von Zeichen. Sie können den Character-Konstruktor verwenden, um ein Character-Klassenobjekt zu erstellen, zum Beispiel:
Character ch = new Character('a');
In einigen Fällen erstellt der Java-Compiler automatisch ein Character-Objekt.
Wenn beispielsweise ein Parameter vom Typ „char“ an ein Zeichen übergeben wird, das einen Parameter vom Typ „Character“ erfordert, konvertiert der Compiler den Parameter vom Typ „char“ automatisch in ein Character-Objekt. Diese Funktion wird als Boxen bezeichnet, die umgekehrte Funktion als Unboxing.
// Here following primitive char 'a' // is boxed into the Character object ch Character ch = 'a'; // Here primitive 'x' is boxed for method test, // return is unboxed to char 'c' char c = test('x');
Das Zeichen, dem ein Backslash () vorangestellt ist, stellt ein Escape-Zeichen dar, das für den Compiler eine besondere Bedeutung hat.
Die folgende Liste zeigt Javas Escape-Sequenzen:
Escape-Sequenz | beschreiben |
---|---|
T | Fügen Sie hier im Text eine Tabulatortaste ein |
B | Fügen Sie hier im Text eine Zurück-Taste ein |
N | Zeilenumbruch an dieser Stelle im Text |
R | Fügen Sie hier im Text einen Wagenrücklauf ein |
F | Fügen Sie an dieser Stelle im Text einen Seitenumbruch ein |
' | Fügen Sie hier im Text einfache Anführungszeichen ein |
" | Fügen Sie hier im Text doppelte Anführungszeichen ein |
\ | Fügen Sie an dieser Stelle im Text einen Backslash ein |
Wenn eine Druckanweisung auf eine Escape-Sequenz trifft, interpretiert der Compiler diese korrekt.
public class Test { public static void main(String args[]) { System.out.println("She said "Hello!" to me."); } }
Die Kompilierungs- und Ausführungsergebnisse des obigen Beispiels lauten wie folgt:
She said "Hello!" to me.
Im Folgenden sind die Methoden der Character-Klasse aufgeführt:
Seriennummer | Methoden und Beschreibung |
---|---|
1 | isLetter(), ob es sich um einen Buchstaben handelt |
2 | isDigit(), ob es sich um ein numerisches Zeichen handelt |
3 | isWhitespace(), ob es sich um ein Leerzeichen handelt |
4 | isUpperCase() Ist es ein Großbuchstabe? |
5 | isLowerCase() ob es sich um Kleinbuchstaben handelt |
6 | toUpperCase() gibt die Großbuchstabenform von Buchstaben an |
7 | toLowerCase() gibt die Kleinbuchstabenform von Buchstaben an |
8 | toString() gibt die Zeichenfolgenform des Zeichens zurück. Die Länge der Zeichenfolge beträgt nur 1 |
public static boolean isUpperCase(char ch): Bestimmt, ob das angegebene Zeichen ein Großbuchstabe ist;
public static boolean isLowerCase(char ch): Bestimmt, ob das angegebene Zeichen ein Kleinbuchstabe ist;
public static boolean isDigit(char ch): Bestimmt, ob das angegebene Zeichen ein numerisches Zeichen ist;
Der boolesche Wert in diesen drei Sätzen bedeutet, dass der Rückgabewert nach Verwendung dieser drei Methoden vom booleschen Typ ist.
public class Java { public static void main(String[] args) { Character ch = new Character('X'); System.out.println(Character.isUpperCase(ch)); //Character.isUpperCase(ch) 用于判断括号里的字母是否为大写 System.out.println(Character.isLowerCase(ch)); //Character.isLowerCase(ch) 用于判断括号里的字母是否为小写 System.out.println(Character.isDigit(ch)); //Character.isDigit(ch) 用于判断括号里的内容是否为数字 } }
Das laufende Ergebnis ist:
true false false
Eine vollständige Liste der Methoden finden Sie in der API-Spezifikation java.lang.Character.