Tabelle schön in der Konsole ausgeben

NichtExpert

Bekanntes Mitglied
Hallo Liebe Community,

Ich soll eine Tabelle schön Tabellarisch in der Konsole ausgeben.
Habe nun schon viel probiert und mir fehlt nur noch ein kleiner Hauch bis zum Erfolg.

Ich habe dazu 2 Arrays erstellt, die eine enthält Tage (von 1-14) und der andere Array enthält Temperaturen.
Wie ich die Tabelle nun ausgebe, ist egal, ob untereinander, nebeneinander oder ob ich eine For-, For Each-schleife oder etc. nehme ist auch egal.
Wollte es nur nicht einzeln über eine Print Anweisung abtippen.
Mein Problem nun, ich bekomme die Beiden Arrays untereinander in der Konsole ausgegeben.
Aber die Tage gehen von 1-14 und die Temperaturen liegen fast immer über 10°Celsius und verschieben sich am Ende immer soweit, dass die Werte nicht mehr untereinander für die entsprechenden Tage liegen.

Bitte um etwas Hilfe

Java:
public static void main(String[] args) {
        
    // Integer-Array Tag erstellt
        int[] tag = new int[] {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14};
    // Integer Array Temperatur erstellt
        int[] temperatur = {12, 14, 9, 12, 15, 16, 15, 15, 11, 8, 13, 13, 15, 12};

    
    
    // Ausgabe Tag
        System.out.print("Tag:  ");
    
        for (int zahl : tag) {
            // Ausgabe Array Tage
            System.out.print(zahl+"   ");
        }
    // Sprung in die nächste Zeile
        System.out.println("");
    // Ausgabe Temperatur (in einer neuen Zeile)
        System.out.print("Temp:  ");
    
        for(int zahl : temperatur) {
    // Ausgabe Array Temperatur       
            System.out.print(zahl+"  ");

        }

    
    
    /**Auskommentiert, versuchter Ansatz   
*        /*
*        int[] zahlen = new int[] {1, 2, 3, 4, 5, 6, 7, 8, 9, 0};
*
*        for(int i = 0; i < zahlen.length; i++) {
*            System.out.println(i + 1 +". Zahl:\t"+ zahlen[i]);
*        }
*        */
    
    
    
    
/**
*        System.out.print("Tag" + " " + "Temperatur");
*
*        for (int i=0; i<tag.length; i++) {
*            //System.out.println(tag[]);
*        }
*/

        


    }
}
 
Tabulator hast du ja schon verwendet. Gib doch einfach in einer Schleife zuerst die Tage, jeweils mit Tabulator getrennt, aus. In der nächsten Zeile kannst du dann die Temperaturen, ebenfalls in einer Schleife, durch Tabulator getrennt ausgeben.
 
Anstatt mit int-Arrays kann man es doch auch mit String-arrays versuchen. Ich habe es so gemacht, und bei mir sieht es symmatrisch aus, weil ich einfach alle Ziffern, die einstellig sind, als Leerstring plus die Ziffer repräsentiert habe. Alternativ kann man dann noch kucken, dass man aus int-Arrays mit n-stelligen Ziffern die Ziffern so in 2 String[] einliest, dass es halt passt (das kannst Du ja mal versuchen, umzusetzen). Hier also meins:

Java:
    public static void main(String[] args) {

        // String-Array Tag erstellt
        String[] tag = { " 1", " 2", " 3", " 4", " 5", " 6", " 7", " 8", " 9", "10", "11", "12", "13", "14" };

        // String-Array Temperatur erstellt
        String[] temperatur = { "12", "14", " 9", "12", "15", "16", "15", "15", "11", " 8", "13", "13", "15", "12" };

        System.out.print("Tag:  ");

        for (String tg : tag) {
            System.out.print(tg + " ");
        }

        System.out.println();

        System.out.print("Temp: ");

        for (String tm : temperatur) {
            System.out.print(tm + " ");
        }

       

    }
 
Habe es geschafft, vielen Dank nochmal

Da ich als Anfänger auch immer froh bin, wenn die auflösung mit dabei ist, schicke ich nochmal den Code.

Java:
public static void main(String[] args) {

        int[] tag = new int[] {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14};
        int[] temperatur = {12, 14, 9, 12, 15, 16, 15, 15, 11, 8, 13, 13, 15, 12};


        System.out.print("Tag :  ");
        for (int zahl : tag) {
            System.out.print(zahl+"\t");
        }

        System.out.println("");
        System.out.print("Temp:  ");
        for(int zahl : temperatur) {
            System.out.print(zahl+"\t");
        }





    }
}
 

Neue Themen


Zurück
Oben