Ich weiß nicht, wie ich das in Worten erklären soll. Ich versuche dies in meinem CMD nach dem Laufen zu erreichen.Drucktabellenformat mit dynamischer Spaltengröße
Event Average Stdev Weight
Logins 4.50 1.25 2
Total time online 287.15 42.12 1
Emails sent 65.40 30.71 1
Orders processed 150.73 20.13 1
Pizza's ordered online 2.03 1.06 0.5
Aber jetzt mein Ergebnis wie dieses, ist
Event Average Stdev Weight
Logins 3.33 1.25 2.0
Time Online 335.33 33.52 1.0
Emails Sent 66.00 15.51 1.0
Orders processed 150.67 17.25 1.0
Pizza's Ordered 2.33 1.25 0.5
Der Ereignisname lang oder kurz sein kann
ist bis auf eine Benutzereingabe. Ist es möglich, unabhängig von der Länge des Ereignisnamens schön zu formatieren? Mein Wert ist alles richtig, ist nur die Formatierung. Unten ist mein Druckcode.Formatter formatter = new Formatter();
System.out.println(formatter.format("%s %20s %20s %20s", "Event", "Average", "Stdev", "Weight"));
int count = 0;
for (Map.Entry<String, Double> entry : eventsMap.entrySet()) {
formatter = new Formatter();
String event = entry.getKey();
double weight = entry.getValue();
System.out.println(formatter.format("%s %20s %20s %20s", event, average[count], stdev[count], weight));
count++;
}
Also muss ich nur die maximale Länge für die Ereignislänge finden und die% -20.20s entsprechend ändern, oder? –
Ja, andernfalls, wenn Sie nicht die maximale Länge finden möchten, können Sie eine feste Länge festlegen und schließlich die Zeichenfolge abgeschnitten werden, aber die Ausrichtungen bleiben korrekt. –