3.3. Arrays
Ein Array ist eine Liste von Skalaren (d.h. Integer, Floats, Strings usw.). Folgendes sind Arrays:

     (1, 2, 3 5, 9);
      (1, 2.4, "Daddeldu", 5.6, 7);

Ein Operator ".." ermöglicht es Aufzählungen mit dem Inkrement von eins zu erzeugen:

     (1..5)          # entspricht (1, 2, 3, 4, 5)
      (1.2 .. 5.2)  # entspricht (1.2, 2.2, 3.2, 4.2, 5.2)
      (1.3 .. 6.1)  # entspricht (1.3, 2.3, 3.3, 4.3, 5.3)

Eine Array-Variabe ist durch das vorangestellte "@" gekennzeichnet. Also z.B.

     @feld

Array können gleich initialisiert oder gegenseitig zugewiesen werden:

      @feld = (42..45, "Barny", 45);    # (42, 43, 44, 45, "Barny", 45)
      @feld2 = @feld;

Mit den Elementen kann wie folgt verfahren werden:

      $a = $feld[0]    # = 42
      $b = $feld[4]    # = "Barny"
      $feld[0]=37;
      $feld[3]++;
      ($feld[1], $feld[2]) = ($feld[2], $feld[1]);
      ($a, $b) = @feld[3,4];

Der Index des letzten Elements kann mit $#feld abgefragt werden (d.h. ein Array hat $#+1 Element)

Neue Werte können an ein Array wie folgt angefügt werden:

      $feld[$#feld++]="abc";

oder

      push(@feld, $wert);
      push(@feld, "2", 4, 7);
      
Mit Hilfe des zusätzlichen "pop" kann man einfach einen Stack erzeugen. Pop gibt das letzte Element eines Arrays zurück und entfernt es aus der Liste. Das Gegenstück zu push und pop, die am Ende des Arrays arbeiten, kann mit Hilfe der Befehle shift und unshift der Anfang manipuliert werden.
Wenn ein Teil eines Arrays abgefragt, gelöscht oder ersetzt werden sollte, kann dies mit der Funktion "splice(@feld, OFFSET [, LÄNGE [, LISTE]])".  Z.B.:

      $rest= splice(@feld, 2);
      @rest= splice(@feld, 2, 5);
      @rest= splice(@feld, 2, 5, (1,4,5,8));