Home > Informatik > Stufe EF > 9. zweidimensionale Arrays > 9.1 Notenliste

9.1.2 Ein zweidimensionaler Array

Implementation 1 - Implementation 2 - Übungen

Ein 2D-Array aus int-Zahlen

Betrachten wir zunächst wieder eine mögliche Implementierung:

import java.util.Random;

public class KNoten
{
    int[][] noten;
    Random wuerfel;
    
    public KNoten()
    {
       noten = new int[30][10];
       wuerfel = new Random();
    }
    
    public void erzeugen()
    {
       for (int s=0; s<30; s++)
          for (int i=0; i<10; i++) 
             noten[s][i] = wuerfel.nextInt(6)+1;
    }
    
    public void ausgeben()
    {
        for (int s = 0; s < 30; s++)
        {
            if (s < 10) 
               System.out.print("Noten fuer Schueler Nr.  " +  s + ": ");
            else
               System.out.print("Noten fuer Schueler Nr. " +  s + ": ");
            
            for (int i = 0; i < 10; i++)
               System.out.print(noten[s][i] + " / "); 
           
            System.out.println(noten[s][9]); 
       }
    }
}

In der Klasse KNotenhaben wir jetzt einen zweidimensionalen Array implementiert.

Die Notenliste als zweidimensionaler Array (Tabelle)
Autor: Ulrich Helmich 2022, Lizenz: siehe Seitenende

Einen zweidimensionalen Array müssen Sie sich so ähnlich vorstellen wie eine Tabelle in einer Textverarbeitung. Eine Tabelle besteht aus Zeilen (waagerecht) und Spalten (senkrecht). Die Zeilen unseres zweidimensionalen Noten-Arrays sind die 10 Noten für einen Schüler oder eine Schülerin. Eine Klasse von 30 Schülern benötigt dann 30 solcher Zeilen.

Die Spalten dieses zweidimensionalen Arrays sind die Noten eines bestimmten Fachs. Die Spalte N6 könnte zum Beispiel für das Fach Informatik stehen, die Spalte N5 für Englisch.

Achten Sie bitte wieder darauf, dass die Indices sich von den Zeilen- und Spaltennummern um -1 unterscheiden. Die Spalte mit der Nummer N3 hat beispielsweise den Index 2, die Zeile mit der Nummer S3 (Schüler Nr. 3) hat den Index 2.

Wenn wir nun die Englischnote der Schülerin mit der Nummer S3 (und dem Index 2) in Erfahrung bringen wollen, müssen wir das entsprechende Arrayelement adressieren. Das geschieht - wie bei Arrays üblich - mit eckigen Klammern.

Schülerin S3 hat in der Tabelle den Index 2, die Englischnoten haben den Index 4.

Mit noten[2][4]erhalten wir dann die Englischnote der Schülerin S3.

Seitenanfang -
Zurück zur Hauptseite 9.1 Notenliste ...
Weiter mit Übungen ...