Wir alle wissen, dass Programme manchmal Zahlen formatieren müssen. Was ist also Zahlenformatierung? Die sogenannte digitale Formatierung besteht darin, eine Zeichenfolge gemäß dem angegebenen Format zu erhalten.
Angenommen, wir möchten, dass 3,141592 bis zu 2 Dezimalstellen behält, dann sollte die resultierende formatierte Zeichenfolge 3,14 sein; wenn wir möchten, dass die ganze Zahl 123456789 nach „Tausenden“ gruppiert wird, dann sollte die resultierende formatierte Zeichenfolge 123.456.789 sein; Wenn die Zahl 12,3456 drei Dezimalstellen beibehält, muss der ganzzahlige Teil mindestens drei Ziffern enthalten. Die erhaltene formatierte Zeichenfolge sollte dann 012,346 lauten.
Vor JDK 1.5 mussten Programme verwandte Klassen im java.text-Paket verwenden, beispielsweise die DecimalFormat-Klasse , um numerische Daten zu formatieren. Die JDK 1.5-Version bietet eine praktischere Formatter-Klasse . Die Formatter-Klasse bietet eine Formatierungsmethode ähnlich der printf-Funktion der C-Sprache:
Format (Formatmodus, Werteliste)
Diese Methode gibt eine Zeichenfolgendarstellung einer „Werteliste“ entsprechend dem „Formatierungsmodus“ zurück.
Derzeit hat Java die Formatmethode zu einer statischen Methode der String-Klasse gemacht. Daher kann das Programm die Formatmethode direkt zum Formatieren von Zahlen aufrufen.
Der „Formatierungsmodus“ in der Formatierungsmethode ist eine in doppelte Anführungszeichen eingeschlossene Zeichenfolge, dh eine Zeichenfolge. Die Zeichen in dieser Zeichenfolge bestehen aus Formatzeichen und gewöhnlichen Zeichen.
Beispiel: %d und %f in den Ausgabeergebnissen %d, %f, %d sind Formatsymbole. Die ersten vier chinesischen Zeichen und die beiden Kommas in der Mitte sind gewöhnliche Zeichen. Es ist zu beachten, dass alles, was nicht a ist Formatsymbol wird als gewöhnliches Zeichen betrachtet. Schüler können sich auf die Klasse java.util.Formatter in der Java-API beziehen, um mehr über Formatzeichen zu erfahren. Die von der Formatmethode zurückgegebene Zeichenfolge ist die Zeichenfolge, nachdem die Formatzeichen im „Formatierungsmodus“ durch die formatierten Ergebnisse ersetzt wurden, zum Beispiel:
Strings=String.format(%.2f,3.141592);
Dann ist s 3,14, da das Ergebnis der %.2f-Formatierung von 3,141592 3,14 ist.
Die „Werteliste“ in der Formatmethode ist eine durch Kommas getrennte Liste von Variablen, Konstanten oder Ausdrücken. Stellen Sie sicher, dass die Anzahl der Formatzeichen im „Formatmodus“ der Formatmethode mit der Anzahl der in der „Werteliste“ aufgeführten Werte übereinstimmt, zum Beispiel:
Strings=String.format(%d元%0.3fkg%d台,123,456.777888,999);
Dann beträgt s 123 Yuan, 456,778 Kilogramm und 999 Einheiten.
Standardmäßig verwendet die Formatierungsmethode die Formatierungszeichen im „Formatierungsmodus“, um von links nach rechts die entsprechenden Werte in der „Werteliste“ zu formatieren, während die gewöhnlichen Zeichen im „Formatierungsmodus“ unverändert bleiben, z Beispiel: Unter der Annahme, dass der Typ int die Werte der Variablen x und der Doppelvariablen y 123 bzw. 3,1415926 beträgt, gilt für:
Strings=String.format(von links nach rechts:%d,%.3f,%d,x,y,100);
Dann ist s von links nach rechts: 123,3.142,100.
Wenn Sie für die Formatierung nicht die Standardreihenfolge (von links nach rechts) verwenden möchten, können Sie dem Formatzeichen auch ein Indexsymbol voranstellen: index$, zum Beispiel bedeutet 1$ den ersten in der „Werteliste“. „, 2$ bedeutet „Wert“ 2 in der Liste“ für:
Strings=String.format(nicht von links nach rechts:%2$.3f,%3$d,%1$d,x,y,100);
Dann ist s nicht von links nach rechts: 3.142.100.123.
Hinweis: Wenn Sie normale % in den „Formatierungsmodus“ einbeziehen möchten, müssen Sie beim Schreiben des Codes nacheinander zwei % eingeben, zum Beispiel:
Strings=String.format(%d%%,89);
Dann beträgt s 89 %.