Helmichs Informatik-Lexikon

Arrays

Allgemeines

Ein Array ist eine endliche Menge gleichartiger Variablen.

Die Klasse Liste im folgenden Quelltext zeigt die Deklaration, die Initialisierung und den Gebrauch eines einfachen Arrays, der aus 100 Variablen des Typs int besteht.

 1   public class Liste 
 2   {
 3      int[] zahl;  
 4
 5      public Liste() 
 6      {
 7         zahl = new int[100];
 8         for (int i=0; i < 100; i++) zahl[i] = i*i;
 9      }
10
11      public void ausgeben() 
12      {
13         for (int k=0; k < 100; k++)
14            System.out.println("Zahl "+k+" = "+zahl[k]);
15      }
16   }

Quelltext 1: Deklaration und Initialisierung eines Arrays aus 100 int-Zahlen sowie Befüllung und Ausgabe der Arrayelemente

Deklaration eines Arrays

In der Zeile 3 wird der Array deklariert. Dazu gibt man zunächst den Datentyp der einzelnen Arrayelemente an - hier also int, gefolgt von einem Paar eckiger Klammern. Anschließend kommt der Bezeichner des Arrays - hier zahl, gefolgt von einem Semikolon.

Deklaration

Einzelheiten zur Deklaration eines Arrays finden Sie auf dieser Lexikon-Seite.

Initialisierung eines Arrays

In der Zeile 7 wird der Array initialisiert. Bei der Deklaration wurde zwar festgelegt, welchen Datentyp die einzelnen Arrayelemente haben sollen, es wurde aber noch nicht bestimmt, aus wie vielen Elementen der Array bestehen soll. Das wird bei der Initialisierung gemacht. In unserem Beispiel werden 100 int-Elemente "bestellt".

Bei der Initialisierung gibt man zunächst den Namen des Arrays an, nach einem Gleichheitszeichen kommt dann der Befehl new, gefolgt vom Datentyp und - in eckigen Klammern - der Anzahl der gewünschten Elemente.

Weitere Einzelheiten zur Initialisierung eines Arrays…

Initialisierung

Einzelheiten zur Initialisierung eines Arrays finden Sie auf dieser Lexikon-Seite.

Befüllen eines Arrays

In der Zeile 8 wird der Array mit Werten gefüllt:

 for (int i=0; i < 100; i++) zahl[i] = i*i;

Man könnte natürlich jedem einzelnen Arrayelement einen Wert zuweisen, in diesem Fall ist aber eine for-Schleife der günstigere Weg, da man die Arraywerte leicht aus der Laufvariable berechnen kann. In dem Array sollen nämlich die Quadratzahlen der Zahlen 0 bis 99 gespeichert werden.

Will man ein Arrayelement mit einem Wert füllen, so gibt man zunächst den Namen des Arrays an, und dann - in eckigen Klammern - den Index des gewünschten Arrayelements:

zahl[5] = 78 * 6 + 3 + xPos;

Anschließend kommt der Zuweisungsoperator und dann ein Ausdruck, dessen Ergebnistyp mit dem Elementtyp des Arrays übereinstimmen muss. Einem int-Array kann man also keine double-Zahlen oder Strings als Werte zuweisen. In unserem Beispiel besteht der int-Ausdruck aus einem arithmetischen Ausdruck, der drei int-Konstanten und eine int-Variable (xPos) miteinander verrechnet. Das int-Ergebnis wird dann dem sechsten Arrayelement zugewiesen.

Auslesen eines Arrays

In den Zeilen 13 und 14 wird der Array wieder ausgelesen. Auch hierzu bietet sich eine for-Schleife an, zumindest dann, wenn man alle Elemente auslesen will. Auch hier muss man wieder den Namen des Array nennen und dann - in eckigen Klammern - den Index des gewünschten Elementes angeben.

Arrays als Parameter

Arrays können auch als Parameter für Methoden eingesetzt werden, wie das folgende Beispiel zeigt:

public class ArrayTest
{
    int[] liste;
    
    public ArrayTest()
    {
      liste = new int[30];
      for (int i=0; i < 30; i++)
         liste[i] = i*i;
         
      ArrayZeigen.anzeigen(liste);
    }
}

Quelltext 2: Erzeugung eines int-Arrays und Übergabe desselben als Parameter an eine Methode

Der Array liste wird hier der Methode anzeigen() der Klasse ArrayZeigen übergeben - als Parameter.

Arrays als Parameter

Einzelheiten zur Übergabe von Arrays als Parameter für Methoden finden Sie auf dieser Lexikon-Seite.

Arrays

Die Folge 7 des Java-Kurses beschäftigt sich schwerpunktmäßig mit Arrays, auch mit Objekt-Arrays.