Tabellen ausrichten
Formatieren Sie Datenspalten.
Tabellen ausrichten ist eine kostenlose Java Academy-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Java Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Java Academy-Kurs umfasst insgesamt 4 Lektionen.
Warum Ausrichtung?
Wenn Sie Datenzeilen ausgeben, sind ungleichmäßige Spalten schwer lesbar. Ausgerichtete Spalten ordnen Zahlen und Beschriftungen übersichtlich untereinander an.
Mit Breiten und Flags von printf können Sie direkt in der Konsole übersichtliche Tabellen erstellen.
Standardmäßig rechtsbündig
Eine Breite wie %10s reserviert 10 Zeichen und füllt links auf, sodass der Text rechtsbündig ausgerichtet wird.
Zahlen verhalten sich genauso. Deshalb stehen Zahlenspalten am rechten Rand bündig untereinander.
public class Main {
public static void main(String[] args) {
System.out.printf("[%10s]\n", "hi");
}
}Linksbündig mit Minuszeichen
Fügen Sie ein --Flag hinzu, um den Inhalt im Feld linksbündig auszurichten. %-10s platziert den Text links und füllt rechts auf.
Die Linksbündigkeit eignet sich ideal für Beschriftungen und Namen.
public class Main {
public static void main(String[] args) {
System.out.printf("[%-10s]\n", "hi");
}
}Zwei Spalten
Kombinieren Sie eine linksbündige Beschriftung mit einer rechtsbündigen Zahl, um eine Zeile zu erstellen. %-10s%5d weist dem Namen eine Breite von 10 und der Zahl eine Breite von 5 zu.
Wiederholen Sie dasselbe Format für jede Zeile, damit die Spalten ausgerichtet bleiben.
public class Main {
public static void main(String[] args) {
System.out.printf("%-10s%5d\n", "Apples", 3);
System.out.printf("%-10s%5d\n", "Pears", 12);
}
}Eine einfache Tabelle
Wenn Sie für die Überschrift und jede Datenzeile denselben Format-String verwenden, bleibt alles ausgerichtet.
Hier folgen drei Zeilen demselben Muster, sodass die Spalten übersichtlich bleiben.
public class Main {
public static void main(String[] args) {
String fmt = "%-8s%6d\n";
System.out.printf(fmt, "Name", 0);
System.out.printf(fmt, "Ann", 90);
System.out.printf(fmt, "Bob", 7);
}
}Dezimalzahlen ausrichten
Für Geldbeträge oder Messwerte können Sie Breite und Präzision kombinieren: %8.2f richtet eine Zahl mit zwei Dezimalstellen in einem 8 Zeichen breiten Feld rechtsbündig aus.
Die Dezimaltrennzeichen stehen in allen Zeilen senkrecht untereinander.
public class Main {
public static void main(String[] args) {
System.out.printf("%8.2f\n", 5.5);
System.out.printf("%8.2f\n", 123.4);
}
}Überschrift plus Zahlen
Kombinieren Sie Zeichenfolgen- und Zahlenspalten in einer Zeile. Eine Beschriftung links und ein rechtsbündiger Preis wirken zusammen ganz natürlich.
Dieses Muster bildet den Kern der meisten Konsolenberichte.
public class Main {
public static void main(String[] args) {
System.out.printf("%-10s%8.2f\n", "Coffee", 3.5);
System.out.printf("%-10s%8.2f\n", "Cake", 12.0);
}
}Spaltenbreiten wählen
Wählen Sie eine Breite, die mindestens so groß ist wie Ihr längster Wert. Andernfalls läuft der Text über die Spalte hinaus und die Ausrichtung geht verloren.
Wenn ein Wert breiter als das Feld ist, gibt printf ihn vollständig aus und ignoriert die Breite.
public class Main {
public static void main(String[] args) {
System.out.printf("[%3s]\n", "toolong");
}
}Zeilen durchlaufen
Mit einer Schleife und einer gemeinsamen Formatzeichenfolge lässt sich eine vollständige Tabelle einfach erzeugen.
Jeder Durchlauf gibt eine ausgerichtete Zeile aus. Dadurch wird das Layout beim Hinzufügen von Daten nicht beschädigt.
public class Main {
public static void main(String[] args) {
String[] names = {"Sun", "Mon", "Tue"};
int[] hrs = {8, 12, 5};
for (int i = 0; i < names.length; i++) {
System.out.printf("%-6s%4d\n", names[i], hrs[i]);
}
}
}Mit String.format kombinieren
Sie können jede ausgerichtete Zeile mit String.format erstellen, wenn Sie den Text vor der Ausgabe benötigen.
Die Regeln für Breite und Ausrichtung sind identisch.
public class Main {
public static void main(String[] args) {
String row = String.format("%-8s%5d", "Total", 99);
System.out.println(row);
}
}Tabulatoren oder Breiten
Sie könnten Spalten mit \t-Tabulatoren trennen. Da Tabstopps jedoch unterschiedlich sein können, werden lange Werte nicht mehr korrekt ausgerichtet.
Feste Breiten wie %-10s sorgen für zuverlässige und vorhersehbare Spalten. Verwenden Sie sie daher bevorzugt für Tabellen.
Kurze Überprüfung
Welches Format richtet einen Namen innerhalb von 12 Zeichen linksbündig aus?
Zusammenfassung
Sie haben ausgerichtete Tabellen mit Breitenfeldern, dem --Flag für die Linksausrichtung und %8.2f für übersichtliche Dezimalspalten erstellt.
Mit printf, String.format und Ausrichtung können Sie jede Konsolenausgabe übersichtlich formatieren.
Häufig gestellte Fragen
Ist die Lektion „Tabellen ausrichten“ kostenlos?
Ja — der vollständige Text von „Tabellen ausrichten“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Java Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Java Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Tabellen ausrichten“?
Formatieren Sie Datenspalten. Du übst Java Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Java Academy zu starten?
Keine Vorkenntnisse erforderlich. Java Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.
Wie lange dauert die Lektion „Tabellen ausrichten“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Java Academy-Lektion Code schreiben und ausführen?
Ja. Jede Java Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- printf-Grundlagen
- Zahlen- und Dezimalformate
- String.format
- Tabellen ausrichten