Wenn Sie eine Funktion mit f am Ende verwenden, z. B. printf (), können Sie das Anzeigeformat und die Ausgabe angeben.
Ich habe es noch nie benutzt, aber ich kann nichts tun, ohne es selbst zu versuchen. Versuchen wir es also, während wir es versuchen.
Spezifizierer | Entsprechender Typ | Erläuterung |
---|---|---|
%s | string | Zeichenfolge ausgeben |
%d | int | Ganzzahl in Dezimalschreibweise ausgeben |
%f | float | Reelle Zahl ausgeben |
public class MyApp {
public static void main(String[] args) {
int score = 50; // %d entspricht
double height = 165.8; // %f entspricht
String name = "mako"; // %s entspricht
System.out.printf("name: %s, score: %d, height: %f\n", name, score, height);
System.out.printf("name: %-10s, score: %10d, height: %5.2f\n", name, score, height);
String s = String.format("name: %-10s, score: %-10d, height: %5.2f\n", name, score, height);
System.out.println(s);
}
}
Ausführungsergebnis
name: mako, score: 50, height: 165.800000
name: mako , score: 50, height: 165.80
name: mako , score: 50 , height: 165.80
1.% s s ist String 2. f in% f ist float 3. d in% d ist Dezimal (Dezimal)
In diesem Sinne würde ich das nicht vermeiden. Die Art und Weise, die Argumente von printf zu schreiben, scheint für Anfänger etwas kompliziert zu sein, aber alles, was Sie tun müssen, ist, die Variablennamen als Argumente der Reihe nach zu übergeben.
Es ist leicht zu verstehen, wenn Sie sich beruhigen und einige davon selbst ausprobieren.
%10s //Bereiten Sie sich auf 10 Ziffern vor und begründen Sie dies mit Recht
%-10s //Bereiten Sie sich auf 10 Ziffern vor und richten Sie sie linksbündig aus
%10s //Bereiten Sie sich auf 10 Ziffern vor und begründen Sie dies mit Recht
%-10s //Bereiten Sie sich auf 10 Ziffern vor und richten Sie sie linksbündig aus
%5.3f //Zeigen Sie den ganzzahligen Teil in 5 Ziffern und den Minderheitenteil in 3 Ziffern an
Für die letzten% 5.3f halte ich es für wenig sinnvoll, den ganzzahligen Teil anzugeben. .. ..
public static void main(String[] args) {
double f = 12345.12345;
System.out.printf("%f\n", f);
System.out.printf("%.3f\n", f);
System.out.printf("%3.3f\n", f);
}
}
Ausführungsergebnis
12345.123450
12345.123
12345.123
Wenn der ganzzahlige Teil die angegebene Anzahl von Ziffern überschreitet, wird er unverändert angezeigt. Nur wenige Teile haben sich geändert.
Die Anzeige ist für% .3f und% 3.3f gleich.
Recommended Posts