Java Zeichenketten formatieren

JavaJavaBeginner
Jetzt üben

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

Einführung

In Java formatiert die String.format()-Methode einen String unter Verwendung einer Kombination aus einem Formatierungsstring, einer Gebietsschemaeinstellung und Argumenten. Der Formatierungsstring gibt das Format an, in das die Argumente umgewandelt werden sollen, und die Gebietsschemaeinstellung gibt alle Einstellungen an, die verwendet werden sollen, wie die Sprache oder Region. In diesem Lab werden wir mehr darüber lernen, wie die String.format()-Methode verwendet wird, um Strings zu formatieren.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL java(("Java")) -.-> java/BasicSyntaxGroup(["Basic Syntax"]) java(("Java")) -.-> java/StringManipulationGroup(["String Manipulation"]) java(("Java")) -.-> java/ObjectOrientedandAdvancedConceptsGroup(["Object-Oriented and Advanced Concepts"]) java(("Java")) -.-> java/SystemandDataProcessingGroup(["System and Data Processing"]) java/BasicSyntaxGroup -.-> java/output("Output") java/StringManipulationGroup -.-> java/strings("Strings") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/date("Date") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/exceptions("Exceptions") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/format("Format") java/SystemandDataProcessingGroup -.-> java/string_methods("String Methods") subgraph Lab Skills java/output -.-> lab-117958{{"Java Zeichenketten formatieren"}} java/strings -.-> lab-117958{{"Java Zeichenketten formatieren"}} java/date -.-> lab-117958{{"Java Zeichenketten formatieren"}} java/exceptions -.-> lab-117958{{"Java Zeichenketten formatieren"}} java/format -.-> lab-117958{{"Java Zeichenketten formatieren"}} java/string_methods -.-> lab-117958{{"Java Zeichenketten formatieren"}} end

Ein einfaches Beispiel für die String-Formatierung erstellen

In diesem Schritt werden wir ein einfaches Beispiel erstellen, in dem die String.format()-Methode verwendet wird, um einen String zu formatieren.

  1. Erstellen Sie in das Verzeichnis ~/project eine neue Java-Datei mit dem Namen SimpleFormatExample.java.
  2. In der main()-Methode der Klasse SimpleFormatExample erstellen Sie eine String-Variable namens formattedString und weisen Sie ihr das Ergebnis der Aufruf von String.format() mit den folgenden Argumenten zu:
    1. Die Zeichenfolge "Hello, %s!" als Formatierungszeichenfolge.
    2. Die Zeichenfolge "world" als Argument.
  3. Geben Sie den Wert von formattedString mit System.out.println() aus.
  4. Speichern und schließen Sie die Datei SimpleFormatExample.java.
  5. Kompilieren Sie in der Konsole die Datei SimpleFormatExample.java, indem Sie folgenden Befehl ausführen: javac SimpleFormatExample.java.
  6. Führen Sie dann die Klassen-Datei mit dem Befehl java SimpleFormatExample aus.

Hier ist der Code:

public class SimpleFormatExample {
    public static void main(String[] args) {
        String formattedString = String.format("Hello, %s!", "world");
        System.out.println(formattedString);
    }
}

Wenn Sie den Code ausführen, sollten Sie die folgende Ausgabe sehen:

Hello, world!

Verwendung von Argumenten im Formatierungsstring

In diesem Schritt werden wir lernen, wie Argumente im Formatierungsstring verwendet werden, um die Ausgabe anzupassen.

  1. Öffnen Sie die Datei SimpleFormatExample.java in einem Editor.
  2. Ändern Sie die Variable formattedString, um ein Argument für die Anzahl der anzuzeigenden Zeichen zu verwenden. Ersetzen Sie das "s" im Formatierungsstring durch ".%d-s", um die maximale Anzahl der anzuzeigenden Zeichen anzugeben.
  3. Fügen Sie nach dem Formatierungsstring ein ganzzahliges Argument hinzu, um die maximale Anzahl der anzuzeigenden Zeichen darzustellen.
  4. Speichern und schließen Sie die Datei SimpleFormatExample.java.
  5. Kompilieren Sie in der Konsole die Datei SimpleFormatExample.java, indem Sie folgenden Befehl ausführen: javac SimpleFormatExample.java.
  6. Führen Sie dann die Klassen-Datei mit dem Befehl java SimpleFormatExample aus.

Hier ist der modifizierte Code:

public class SimpleFormatExample {
    public static void main(String[] args) {
        String formattedString = String.format("Hello, %d-s!", 5);
        System.out.println(formattedString);
    }
}

Wenn Sie den Code ausführen, sollten Sie die folgende Ausgabe sehen:

Hello, 5-s!

Verwendung von Flags zum Ändern des Formatierverhaltens

In diesem Schritt werden wir lernen, wie Flags verwendet werden, um das Verhalten des Formatierungsstrings zu ändern.

  1. Öffnen Sie die Datei SimpleFormatExample.java in einem Editor.
  2. Ändern Sie den Formatierungsstring, um den Text linksbündig auszurichten, indem Sie ein Minuszeichen (-) nach dem %-Zeichen hinzufügen.
  3. Fügen Sie einem Argument im Formatierungsstring hinzu, um die minimale Breite der Ausgabe anzugeben.
  4. Speichern und schließen Sie die Datei SimpleFormatExample.java.
  5. Kompilieren Sie in der Konsole die Datei SimpleFormatExample.java, indem Sie folgenden Befehl ausführen: javac SimpleFormatExample.java.
  6. Führen Sie dann die Klassen-Datei mit dem Befehl java SimpleFormatExample aus.

Hier ist der modifizierte Code:

public class SimpleFormatExample {
    public static void main(String[] args) {
        String formattedString = String.format("%-10s, world!", "Hello");
        System.out.println(formattedString);
    }
}

Wenn Sie den Code ausführen, sollten Sie die folgende Ausgabe sehen:

Hello    , world!

Verwendung von Konversionszeichen zur Formatierung unterschiedlicher Datentypen

In diesem Schritt werden wir lernen, wie verschiedene Konversionszeichen verwendet werden, um unterschiedliche Datentypen zu formatieren.

  1. Öffnen Sie die Datei SimpleFormatExample.java in einem Editor.
  2. Ändern Sie den Formatierungsstring, um eine Gleitkommazahl mit dem Konversionszeichen %f aufzunehmen.
  3. Fügen Sie nach dem Formatierungsstring ein Argument mit einer Gleitkommazahl hinzu.
  4. Speichern und schließen Sie die Datei SimpleFormatExample.java.
  5. Kompilieren Sie in der Konsole die Datei SimpleFormatExample.java, indem Sie folgenden Befehl ausführen: javac SimpleFormatExample.java.
  6. Führen Sie dann die Klassen-Datei mit dem Befehl java SimpleFormatExample aus.

Hier ist der modifizierte Code:

public class SimpleFormatExample {
    public static void main(String[] args) {
        String formattedString = String.format("The value of pi is approximately %f", 3.14159265359);
        System.out.println(formattedString);
    }
}

Wenn Sie den Code ausführen, sollten Sie die folgende Ausgabe sehen:

The value of pi is approximately 3.141593

Verwendung von Genauigkeitsmodifikatoren zur Steuerung der Anzahl der Stellen

In diesem Schritt werden wir lernen, wie Genauigkeitsmodifikatoren verwendet werden, um die Anzahl der in der formatierten Ausgabe angezeigten Stellen zu steuern.

  1. Öffnen Sie die Datei SimpleFormatExample.java in einem Editor.
  2. Ändern Sie den Formatierungsstring, um eine Gleitkommazahl mit dem Konversionszeichen %f aufzunehmen. Fügen Sie einen Genauigkeitsmodifikator (%.2f) hinzu, um nur zwei Stellen nach dem Komma anzuzeigen.
  3. Fügen Sie nach dem Formatierungsstring ein Argument mit einer Gleitkommazahl hinzu.
  4. Speichern und schließen Sie die Datei SimpleFormatExample.java.
  5. Kompilieren Sie in der Konsole die Datei SimpleFormatExample.java, indem Sie folgenden Befehl ausführen: javac SimpleFormatExample.java.
  6. Führen Sie dann die Klassen-Datei mit dem Befehl java SimpleFormatExample aus.

Hier ist der modifizierte Code:

public class SimpleFormatExample {
    public static void main(String[] args) {
        String formattedString = String.format("The value of pi is approximately %.2f", 3.14159265359);
        System.out.println(formattedString);
    }
}

Wenn Sie den Code ausführen, sollten Sie die folgende Ausgabe sehen:

The value of pi is approximately 3.14

Verwendung von Gebietsschemata zur Anpassung von Formatierungseinstellungen

In diesem Schritt werden wir lernen, wie Gebietsschemata verwendet werden, um Formatierungseinstellungen wie Sprache oder Region anzupassen.

  1. Öffnen Sie die Datei SimpleFormatExample.java in einem Editor.
  2. Ändern Sie den Formatierungsstring, um eine Zahl aufzunehmen und das Konversionszeichen %d zu verwenden.
  3. Fügen Sie nach dem Formatierungsstring ein ganzzahliges Argument hinzu.
  4. Fügen Sie einem zweiten Argument der String.format()-Methode hinzu, um das zu verwendende Gebietsschema anzugeben. Verwenden Sie die Konstante Locale.FRENCH, um die französische Sprache anzugeben.
  5. Speichern und schließen Sie die Datei SimpleFormatExample.java.
  6. Kompilieren Sie in der Konsole die Datei SimpleFormatExample.java, indem Sie folgenden Befehl ausführen: javac SimpleFormatExample.java.
  7. Führen Sie dann die Klassen-Datei mit dem Befehl java SimpleFormatExample aus.

Hier ist der modifizierte Code:

import java.util.Locale;

public class SimpleFormatExample {
    public static void main(String[] args) {
        String formattedString = String.format(Locale.FRENCH, "Le nombre est %d", 123456789);
        System.out.println(formattedString);
    }
}

Wenn Sie den Code ausführen, sollten Sie die folgende Ausgabe sehen:

Le nombre est 123456789

Formatieren von Datum- und Zeitwerten

In diesem Schritt werden wir lernen, wie die String.format()-Methode verwendet wird, um Datum- und Zeitwerte zu formatieren.

  1. Öffnen Sie die Datei SimpleFormatExample.java in einem Editor.
  2. Fügen Sie eine Importanweisung für die java.util.Calendar-Klasse hinzu, die wir verwenden werden, um eine Kalenderinstanz zu erstellen.
  3. Erstellen Sie eine neue Calendar-Instanz mit Calendar.getInstance().
  4. Ändern Sie den Formatierungsstring, um ein Datum mit dem Konversionszeichen %tD aufzunehmen.
  5. Fügen Sie nach dem Formatierungsstring ein Date-Argument hinzu, indem Sie die calendar.getTime()-Methode verwenden, um einen Date-Wert zu erhalten.
  6. Speichern und schließen Sie die Datei SimpleFormatExample.java.
  7. Kompilieren Sie in der Konsole die Datei SimpleFormatExample.java, indem Sie folgenden Befehl ausführen: javac SimpleFormatExample.java.
  8. Führen Sie dann die Klassen-Datei mit dem Befehl java SimpleFormatExample aus.

Hier ist der modifizierte Code:

import java.util.Calendar;
import java.util.Date;

public class SimpleFormatExample {
    public static void main(String[] args) {
        Calendar calendar = Calendar.getInstance();
        String formattedString = String.format("%tD", calendar.getTime());
        System.out.println(formattedString);
    }
}

Wenn Sie den Code ausführen, sollten Sie die folgende Ausgabe sehen:

08/22/21

Formatieren mit Groß- und Kleinschreibung

In diesem Schritt werden wir lernen, wie die Konversionszeichen %S und %s verwendet werden, um Zeichenketten jeweils in Groß- und Kleinschreibung zu formatieren.

  1. Öffnen Sie die Datei SimpleFormatExample.java in einem Editor.
  2. Ändern Sie den Formatierungsstring, um eine Zeichenkette mit dem Konversionszeichen %S aufzunehmen, um die Zeichenkette in Großbuchstaben zu formatieren.
  3. Ändern Sie den Formatierungsstring, um eine zweite Zeichenkette mit dem Konversionszeichen %s aufzunehmen, um die Zeichenkette in Kleinbuchstaben zu formatieren.
  4. Speichern und schließen Sie die Datei SimpleFormatExample.java.
  5. Kompilieren Sie in der Konsole die Datei SimpleFormatExample.java, indem Sie folgenden Befehl ausführen: javac SimpleFormatExample.java.
  6. Führen Sie dann die Klassen-Datei mit dem Befehl java SimpleFormatExample aus.

Hier ist der modifizierte Code:

public class SimpleFormatExample {
    public static void main(String[] args) {
        String formattedString = String.format("The word %S is in uppercase and %s is in lowercase", "HELLO", "world");
        System.out.println(formattedString);
    }
}

Wenn Sie den Code ausführen, sollten Sie die folgende Ausgabe sehen:

The word HELLO is in uppercase and world is in lowercase

Behandlung von Ausnahmen

In diesem Schritt werden wir uns mit den Ausnahmen beschäftigen, die beim Verwenden der String.format()-Methode ausgelöst werden können, und mit ihrer Behandlung.

  1. Öffnen Sie die Datei SimpleFormatExample.java in einem Editor.
  2. Ändern Sie den Formatierungsstring, um ein Zeichen mit dem Konversionszeichen %c aufzunehmen.
  3. Fügen Sie nach dem Formatierungsstring ein Zeichenargument hinzu.
  4. Speichern und schließen Sie die Datei SimpleFormatExample.java.
  5. Kompilieren Sie in der Konsole die Datei SimpleFormatExample.java, indem Sie folgenden Befehl ausführen: javac SimpleFormatExample.java.
  6. Führen Sie dann die Klassen-Datei mit dem Befehl java SimpleFormatExample aus.

Hier ist der modifizierte Code:

public class SimpleFormatExample {
    public static void main(String[] args) {
        try {
            String formattedString = String.format("The character is %c", "too long");
            System.out.println(formattedString);
        } catch (Exception e) {
            System.out.println("An exception occurred: " + e.getMessage());
        }
    }
}

Wenn Sie den Code ausführen, sollten Sie die folgende Ausgabe sehen:

An exception occurred: UString.format: '%c'!= java.base/java.lang.String

Zusammenfassung

In diesem Lab haben wir gelernt, wie die String.format()-Methode in Java verwendet wird, um Zeichenketten zu formatieren. Wir haben begonnen, indem wir ein einfaches Beispiel erstellt haben, das einen Formatierungsstring und Argumente verwendet hat, um eine Zeichenkette zu generieren. Danach haben wir gelernt, wie verschiedene Konversionszeichen verwendet werden, um Zeichenketten zu formatieren, sowie Präzisionsmodifizierer und Flags, um die Ausgabe zu steuern. Wir haben auch gelernt, wie Gebietsschemata verwendet werden, um Formatierungseinstellungen anzupassen, und wie Datum- und Zeitwerte formatiert werden. Schließlich haben wir einige der Ausnahmen diskutiert, die beim Verwenden der String.format()-Methode ausgelöst werden können, und wie sie behandelt werden.