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.
Erstellen eines einfachen Beispiels zur Zeichenkettenformatierung
In diesem Schritt werden wir ein einfaches Beispiel erstellen, in dem die String.format()-Methode verwendet wird, um einen String zu formatieren.
- Erstellen Sie in das Verzeichnis
~/projecteine neue Java-Datei mit dem NamenSimpleFormatExample.java. - In der
main()-Methode der KlasseSimpleFormatExampleerstellen Sie eine String-Variable namensformattedStringund weisen Sie ihr das Ergebnis der Aufruf vonString.format()mit den folgenden Argumenten zu:- Die Zeichenfolge
"Hello, %s!"als Formatierungszeichenfolge. - Die Zeichenfolge
"world"als Argument.
- Die Zeichenfolge
- Geben Sie den Wert von
formattedStringmitSystem.out.println()aus. - Speichern und schließen Sie die Datei
SimpleFormatExample.java. - Kompilieren Sie in der Konsole die Datei
SimpleFormatExample.java, indem Sie folgenden Befehl ausführen:javac SimpleFormatExample.java. - Führen Sie dann die Klassen-Datei mit dem Befehl
java SimpleFormatExampleaus.
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!
Verwenden von Argumenten im Formatierungsstring
In diesem Schritt werden wir lernen, wie Argumente im Formatierungsstring verwendet werden, um die Ausgabe anzupassen.
- Öffnen Sie die Datei
SimpleFormatExample.javain einem Editor. - Ä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. - Fügen Sie nach dem Formatierungsstring ein ganzzahliges Argument hinzu, um die maximale Anzahl der anzuzeigenden Zeichen darzustellen.
- Speichern und schließen Sie die Datei
SimpleFormatExample.java. - Kompilieren Sie in der Konsole die Datei
SimpleFormatExample.java, indem Sie folgenden Befehl ausführen:javac SimpleFormatExample.java. - Führen Sie dann die Klassen-Datei mit dem Befehl
java SimpleFormatExampleaus.
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!
Verwenden von Flags, um das Formatierungsverhalten zu ändern
In diesem Schritt werden wir lernen, wie Flags verwendet werden, um das Verhalten des Formatierungsstrings zu ändern.
- Öffnen Sie die Datei
SimpleFormatExample.javain einem Editor. - Ändern Sie den Formatierungsstring, um den Text linksbündig auszurichten, indem Sie ein Minuszeichen (
-) nach dem%-Zeichen hinzufügen. - Fügen Sie einem Argument im Formatierungsstring hinzu, um die minimale Breite der Ausgabe anzugeben.
- Speichern und schließen Sie die Datei
SimpleFormatExample.java. - Kompilieren Sie in der Konsole die Datei
SimpleFormatExample.java, indem Sie folgenden Befehl ausführen:javac SimpleFormatExample.java. - Führen Sie dann die Klassen-Datei mit dem Befehl
java SimpleFormatExampleaus.
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!
Verwenden von Konversionszeichen, um verschiedene Datentypen zu formatieren
In diesem Schritt werden wir lernen, wie verschiedene Konversionszeichen verwendet werden, um unterschiedliche Datentypen zu formatieren.
- Öffnen Sie die Datei
SimpleFormatExample.javain einem Editor. - Ändern Sie den Formatierungsstring, um eine Gleitkommazahl mit dem Konversionszeichen
%faufzunehmen. - Fügen Sie nach dem Formatierungsstring ein Argument mit einer Gleitkommazahl hinzu.
- Speichern und schließen Sie die Datei
SimpleFormatExample.java. - Kompilieren Sie in der Konsole die Datei
SimpleFormatExample.java, indem Sie folgenden Befehl ausführen:javac SimpleFormatExample.java. - Führen Sie dann die Klassen-Datei mit dem Befehl
java SimpleFormatExampleaus.
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
Verwenden von Genauigkeitsmodifikatoren, um die Anzahl der Stellen zu steuern
In diesem Schritt werden wir lernen, wie Genauigkeitsmodifikatoren verwendet werden, um die Anzahl der in der formatierten Ausgabe angezeigten Stellen zu steuern.
- Öffnen Sie die Datei
SimpleFormatExample.javain einem Editor. - Ändern Sie den Formatierungsstring, um eine Gleitkommazahl mit dem Konversionszeichen
%faufzunehmen. Fügen Sie einen Genauigkeitsmodifikator (%.2f) hinzu, um nur zwei Stellen nach dem Komma anzuzeigen. - Fügen Sie nach dem Formatierungsstring ein Argument mit einer Gleitkommazahl hinzu.
- Speichern und schließen Sie die Datei
SimpleFormatExample.java. - Kompilieren Sie in der Konsole die Datei
SimpleFormatExample.java, indem Sie folgenden Befehl ausführen:javac SimpleFormatExample.java. - Führen Sie dann die Klassen-Datei mit dem Befehl
java SimpleFormatExampleaus.
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
Verwenden von Gebietsschemas, um die Formatierungseinstellungen anzupassen
In diesem Schritt werden wir lernen, wie Gebietsschemata verwendet werden, um Formatierungseinstellungen wie Sprache oder Region anzupassen.
- Öffnen Sie die Datei
SimpleFormatExample.javain einem Editor. - Ändern Sie den Formatierungsstring, um eine Zahl aufzunehmen und das Konversionszeichen
%dzu verwenden. - Fügen Sie nach dem Formatierungsstring ein ganzzahliges Argument hinzu.
- Fügen Sie einem zweiten Argument der
String.format()-Methode hinzu, um das zu verwendende Gebietsschema anzugeben. Verwenden Sie die KonstanteLocale.FRENCH, um die französische Sprache anzugeben. - Speichern und schließen Sie die Datei
SimpleFormatExample.java. - Kompilieren Sie in der Konsole die Datei
SimpleFormatExample.java, indem Sie folgenden Befehl ausführen:javac SimpleFormatExample.java. - Führen Sie dann die Klassen-Datei mit dem Befehl
java SimpleFormatExampleaus.
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.
- Öffnen Sie die Datei
SimpleFormatExample.javain einem Editor. - Fügen Sie eine Importanweisung für die
java.util.Calendar-Klasse hinzu, die wir verwenden werden, um eine Kalenderinstanz zu erstellen. - Erstellen Sie eine neue
Calendar-Instanz mitCalendar.getInstance(). - Ändern Sie den Formatierungsstring, um ein Datum mit dem Konversionszeichen
%tDaufzunehmen. - Fügen Sie nach dem Formatierungsstring ein
Date-Argument hinzu, indem Sie diecalendar.getTime()-Methode verwenden, um einenDate-Wert zu erhalten. - Speichern und schließen Sie die Datei
SimpleFormatExample.java. - Kompilieren Sie in der Konsole die Datei
SimpleFormatExample.java, indem Sie folgenden Befehl ausführen:javac SimpleFormatExample.java. - Führen Sie dann die Klassen-Datei mit dem Befehl
java SimpleFormatExampleaus.
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.
- Öffnen Sie die Datei
SimpleFormatExample.javain einem Editor. - Ändern Sie den Formatierungsstring, um eine Zeichenkette mit dem Konversionszeichen
%Saufzunehmen, um die Zeichenkette in Großbuchstaben zu formatieren. - Ändern Sie den Formatierungsstring, um eine zweite Zeichenkette mit dem Konversionszeichen
%saufzunehmen, um die Zeichenkette in Kleinbuchstaben zu formatieren. - Speichern und schließen Sie die Datei
SimpleFormatExample.java. - Kompilieren Sie in der Konsole die Datei
SimpleFormatExample.java, indem Sie folgenden Befehl ausführen:javac SimpleFormatExample.java. - Führen Sie dann die Klassen-Datei mit dem Befehl
java SimpleFormatExampleaus.
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
Ausnahmen behandeln
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.
- Öffnen Sie die Datei
SimpleFormatExample.javain einem Editor. - Ändern Sie den Formatierungsstring, um ein Zeichen mit dem Konversionszeichen
%caufzunehmen. - Fügen Sie nach dem Formatierungsstring ein Zeichenargument hinzu.
- Speichern und schließen Sie die Datei
SimpleFormatExample.java. - Kompilieren Sie in der Konsole die Datei
SimpleFormatExample.java, indem Sie folgenden Befehl ausführen:javac SimpleFormatExample.java. - Führen Sie dann die Klassen-Datei mit dem Befehl
java SimpleFormatExampleaus.
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.



