Einführung
In diesem Lab lernst du, wie du die isSurrogate()-Methode der Character-Klasse in Java verwendest. Diese Methode wird verwendet, um zu überprüfen, ob ein bestimmtes Zeichen eine Unicode-Surrogatcodeeinheit ist oder nicht. Die isSurrogate()-Methode ist eine statische Methode, was bedeutet, dass sie direkt auf der Character-Klasse aufgerufen werden kann, ohne eine Instanz der Klasse zu erstellen.
Erstelle eine neue Java-Datei
Erstelle eine neue Java-Datei mit dem Namen IsSurrogateDemo.java im Verzeichnis ~/project.
touch ~/project/IsSurrogateDemo.java
Schreibe den Java-Code
Kopiere und füge folgenden Code in die Datei IsSurrogateDemo.java ein:
import java.util.Scanner;
public class IsSurrogateDemo {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("Geben Sie ein Zeichen ein: ");
char ch = sc.nextLine().charAt(0);
boolean isSurrogateChar = Character.isSurrogate(ch);
if (isSurrogateChar) {
System.out.println(ch + " ist eine Surrogatcodeeinheit.");
} else {
System.out.println(ch + " ist keine Surrogatcodeeinheit.");
}
}
}
Kompiliere und führe das Programm aus
Öffne ein Terminal und navigiere zum Ordner ~/project. Kompiliere die Datei IsSurrogateDemo.java mit dem folgenden Befehl:
javac IsSurrogateDemo.java
Sobald das Programm ohne Fehler kompiliert ist, führe es mit dem folgenden Befehl aus:
java IsSurrogateDemo
Optional): Teste mit einem Zeichenkette
Du kannst den Java-Code so ändern, dass du ein Zeichenkettchen statt eines einzelnen Zeichens testen kannst. Hier ist, wie du den Code ändern kannst:
import java.util.Scanner;
public class IsSurrogateDemo {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("Geben Sie eine Zeichenkette ein: ");
String input = sc.nextLine();
for (int i = 0; i < input.length(); i++) {
char ch = input.charAt(i);
boolean isSurrogateChar = Character.isSurrogate(ch);
if (isSurrogateChar) {
System.out.println(ch + " ist eine Surrogatcodeeinheit.");
} else {
System.out.println(ch + " ist keine Surrogatcodeeinheit.");
}
}
}
}
Kompiliere und führe das geänderte Programm mit den gleichen Befehlen wie zuvor aus (javac IsSurrogateDemo.java und java IsSurrogateDemo).
Ändere das Programm, um Befehlszeilenargumente zu verwenden
Du kannst den Java-Code so ändern, dass er das Eingabezeichen oder -zeichenkettchen aus den Befehlszeilenargumenten annimmt, anstatt den Benutzer zu auffordern, die Eingabe einzugeben. Hier ist, wie du den Code ändern kannst:
public class IsSurrogateDemo {
public static void main(String[] args) {
if (args.length == 0) {
System.out.println("Bitte geben Sie ein Zeichen oder eine Zeichenkette als Befehlszeilenargument ein.");
return;
}
for (String arg : args) {
for (int i = 0; i < arg.length(); i++) {
char ch = arg.charAt(i);
boolean isSurrogateChar = Character.isSurrogate(ch);
if (isSurrogateChar) {
System.out.println(ch + " ist eine Surrogatcodeeinheit.");
} else {
System.out.println(ch + " ist keine Surrogatcodeeinheit.");
}
}
}
}
}
Kompiliere und führe das geänderte Programm mit den folgenden Befehlen aus (ersetze "e" durch beliebiges Zeichen oder Zeichenkettchen):
javac IsSurrogateDemo.java
java IsSurrogateDemo e
Zusammenfassung
Herzlichen Glückwunsch! Du hast gelernt, wie du die isSurrogate()-Methode der Character-Klasse in Java verwendest. Diese Methode wird verwendet, um zu überprüfen, ob ein gegebenes Zeichen eine Unicode-Surrogatcodeeinheit ist oder nicht. Du hast auch gelernt, wie du Eingaben vom Benutzer und Befehlszeilenargumenten entgegennehmen und das Programm entsprechend ändern kannst.



