Wie gebe ich eine bestimmte Formatierung aus?

In Java kann mit System.out.printf(formatstring, argumente) eine formatierte Ausgabe erzeugt werden.

Der Formatstring enthält den auszugebenden konstanten Text, sowie Platzhalter (Leerstellen) für die Argumente. Die angeführten Argumente sättigen die Leerstellen.
Es gibt verschiedene Platzhalter für unterschiedliche Datentypen, unter anderem %s für Strings, %d für Ganzzahlen, %f für Fließpunktzahlen, %x für eine hexadezimale Ausgabe.

Beispiel:

double x = 1.0456;
String s = "kg";
System.out.printf("Menge: %06.2f %s", x, s); // gibt aus: Menge: 001,05 kg

Bedeutung der einzelnen Zeichen im Formatstring %06.2f:

  • % – Kennzeichnet den Beginn einer Leerstelle
  • 0 – Beschreibt, dass bei der Ausgabe führende Nuller geschrieben werden.
  • 6 – Gibt an, dass die Ausgabe mindestens 6 Zeichen lang ist. Zu diesen 6 Zeichen gehören Vorkommastellen (mit optionalem negativem Vorzeichen), Nachkommastellen, der Dezimaltrenner und gegebenenfalls der Exponent.
  • .2 – Beschreibt die Anzahl der Nachkommastellen
  • f – Legt fest, dass die Leerstelle mit einer Fließpunktzahl zu sättigen ist.

Mehr Informationen und Beispiele zur formatierten Ausgabe findet man im Buch “Java ist auch eine Insel” von Christian Ullenboom im Kapitel 4.10 Ausgaben formatieren.