Java Character getName-Methode

JavaJavaBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

Die Methode getName() in Java ist Teil der Klasse Character und gibt den Unicode-Namen (falls verfügbar) zurück, der dem durch einen bestimmten Unicode-Codepunkt dargestellten Zeichen zugewiesen ist. Diese Methode ist sehr nützlich, wenn Sie Unicode-Zeichen in Ihrem Java-Programm darstellen.

Einrichtung

Erstellen Sie eine Datei mit dem Namen CharGetName.java im Verzeichnis ~/project mit dem folgenden Befehl:

touch ~/project/CharGetName.java

Öffnen Sie die Datei CharGetName.java in Ihrem bevorzugten Texteditor.

Importieren der erforderlichen Klasse

In der ersten Zeile des Codes müssen wir die erforderliche Klasse, nämlich die Character-Klasse, importieren. Wir importieren sie wie folgt:

import java.lang.Character;

Definieren einer Klasse

Definieren Sie eine Klasse CharGetName und implementieren Sie die Methode main(). In der Methode main() werden wir die Operation ausführen, um den Unicode-Namen verschiedener Zeichen wie "H", "f" usw. in Java zu erhalten.

Der vollständige Code sieht wie folgt aus:

import java.lang.Character;

public class CharGetName {
    public static void main(String[] args) {
        int codepoint1 = 72; // H
        int codepoint2 = 102; // f
        int codepoint3 = 0;

        String name1 = Character.getName(codepoint1);
        String name2 = Character.getName(codepoint2);
        String name3 = Character.getName(codepoint3);

        System.out.println("The name of character " + Character.toChars(codepoint1)[0] + " is "+name1);
        System.out.println("The name of character " + Character.toChars(codepoint2)[0] + " is "+name2);
        System.out.println("The name of character with codepoint 0 is "+ name3);
    }
}

In diesem Schritt haben wir eine Klasse namens CharGetName mit der Hauptmethode darin definiert. In der Hauptmethode haben wir eine Ganzzahlvariable erstellt, deren Werte die Unicode-Codepunkte der Zeichen sind: codepoint1 hat den Wert 72 (H) und codepoint2 hat den Wert 102 (f). Wir haben die Methode Character.getName() verwendet, um die Namen der Zeichen zu erhalten, und dann haben wir die Namen der Zeichen mit der Methode System.out.println() ausgegeben.

Kompilieren und Ausführen des Java-Programms

Kompilieren Sie die Java-Datei CharGetName mit dem folgenden Befehl:

javac CharGetName.java

Sobald der Kompilierungsprozess erfolgreich abgeschlossen ist, führen Sie den Java-Code mit dem folgenden Befehl aus:

java CharGetName

Bearbeiten des Eingabewerts

Jetzt erstellen wir ein Programm, das die Benutzereingabe entgegennimmt und den Namen des Zeichens auf der Konsole ausgibt.

import java.util.Scanner;
import java.lang.Character;

public class CharGetName {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("Enter a character: ");
        char ch = scanner.next().charAt(0);
        int codepoint = ch;
        String name = Character.getName(codepoint);

        System.out.println("The name of character "+ch+" is "+name);
    }
}

Hier wird ein Scanner-Objekt erstellt, um Eingaben vom Benutzer zu erhalten. Wir verwenden die Methode Scanner.next(), um den Eingabewert zu erhalten. Anschließend wandeln wir das eingegebene Zeichen in einen ganzzahligen Codepunkt mit der Character()-Methode um, um seinen Namen zu ermitteln. Danach geben wir den Namen des Zeichens mit der Methode System.out.println() aus.

Kompilieren und Ausführen des Java-Programms

Kompilieren Sie die Java-Datei CharGetName mit dem folgenden Befehl:

javac CharGetName.java

Sobald der Kompilierungsprozess erfolgreich abgeschlossen ist, führen Sie den Java-Code mit dem folgenden Befehl aus:

java CharGetName

Geben Sie nun das Zeichen ein, dessen Namen Sie ermitteln möchten. Beispielsweise geben Sie "A" ein. Sie erhalten den Namen dieses Zeichens auf der Konsole.

Verwenden eines ungültigen Zeichens als Eingabe

Jetzt schauen wir uns an, wie das Programm reagiert, wenn wir eine ungültige Eingabe machen.

import java.util.Scanner;
import java.lang.Character;

public class CharGetName {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("Enter a character: ");
        char ch = scanner.next().charAt(0);

        if(!Character.isDefined(ch)) {
            System.out.println("\nINVALID INPUT: Please enter a valid character.");
            return;
        }

        int codepoint = ch;
        String name = Character.getName(codepoint);

        System.out.println("\nThe name of character "+ch+" is "+name);
    }
}

In diesem Programm überprüfen wir, ob das eingegebene Zeichen definiert ist oder nicht. Wenn das eingegebene Zeichen nicht definiert ist, geben wir eine Meldung auf der Konsole aus: "Ungültige Eingabe: Bitte geben Sie ein gültiges Zeichen ein." Wenn das Zeichen definiert ist, ermitteln wir wie zuvor seinen Namen und geben ihn mit einer passenden Meldung aus.

Kompilieren und Ausführen des Java-Programms

Kompilieren Sie die Java-Datei CharGetName mit dem folgenden Befehl:

javac CharGetName.java

Sobald der Kompilierungsprozess erfolgreich abgeschlossen ist, führen Sie den Java-Code mit dem folgenden Befehl aus:

java CharGetName

Geben Sie nun eine ungültige Eingabe wie "8" oder "$" ein. Sie erhalten eine Fehlermeldung, die lautet: "INVALID INPUT: Please enter a valid character."

Verwenden eines nicht zugewiesenen Zeichens als Eingabe

Jetzt schauen wir uns an, wie das Programm reagiert, wenn wir ein nicht zugewiesenes Zeichen als Eingabe verwenden.

import java.util.Scanner;
import java.lang.Character;

public class CharGetName {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("Enter a character: ");
        char ch = scanner.next().charAt(0);

        if(!Character.isDefined(ch)) {
            System.out.println("\nINVALID INPUT: Please enter a valid character.");
            return;
        }

        String name = Character.getName(ch);

        if(name == null) {
            System.out.println("\nNO NAME FOUND: There is no assigned name for this character.");
            return;
        }

        System.out.println("\nThe name of character "+ch+" is "+name);
    }
}

Hier verwenden wir die Methode Character.getName(ch) anstelle von Character.getName(codepoint). Wenn dem eingegebenen Zeichen kein Name zugewiesen ist, gibt die Methode null zurück. Daher überprüfen wir, ob der zurückgegebene Name null ist. Wenn dies der Fall ist, geben wir eine Meldung aus, die lautet: "NO NAME FOUND: There is no assigned name for this character."

Kompilieren und Ausführen des Java-Programms

Kompilieren Sie die Java-Datei CharGetName mit dem folgenden Befehl:

javac CharGetName.java

Sobald der Kompilierungsprozess erfolgreich abgeschlossen ist, führen Sie den Java-Code mit dem folgenden Befehl aus:

java CharGetName

Geben Sie nun ein nicht zugewiesenes Zeichen wie null ("\u0000") ein, und Sie erhalten eine Meldung, die lautet: "NO NAME FOUND: There is no assigned name for this character."

Zusammenfassung

In diesem Lab haben wir über die getName()-Methode in Java gelernt und wie man sie verwendet, um den Unicode-Namen von Zeichen zu erhalten, indem wir Java-Codebeispiele implementieren. Wir haben auch gelernt, wie man Benutzereingaben für diese Methode liest und wie man Fehler behandelt, indem wir ein Java-Programm im Terminal eines Ubuntu-Systems erstellen und ausführen.