AoA

Ein AoA oder Array of Array ist eine verschachtelte Datenstruktur, nämlich ein Array, welches weitere Array(referenzen) enthält.

Definition eines AoA

@AoA = ( [ 'Betterworld', 'Crian', 'ds' ],
         [ 17, 42 ],
         [ 2.5, undef, 'Margarine' ]
       );

Zugriff auf einen Wert des AoA

print $AoA[2][2]; # gibt Margarine aus

Definition einer Referenz auf ein AoA

$refAoA = [ [ 'Betterworld', 'Crian', 'ds' ],
            [ 17, 42 ],
            [ 2.5, undef, 'Margarine' ]
          ];

Zugriff auf einen Wert des AoA über eine Referenz

print $refAoA->[1][1]; # gibt 42 aus

AoA wachsen lassen

while (<>) {
    push @AoA, [ split ];
}

bzw.

while (<>) {
    push @$refAoA, [ split ];
}

Zugriff auf Elemente eines "rechteckigen" zweidimensionalen AoA's

for my $x (0..5) {
    for my $y (0..3) {
        $AoA[$x][$y] = $x**2 + $y;

Je nachdem wie man sein Array aufbaut und (konsequent) verwendet, könnte man aber auch so darauf zugreifen:

for my $row (0..3) {
    for my $col (0..5) {
        $AoA[$row][$col] = funktion($row, $col);

Zugriff über Referenz erfolgt wieder durch Einfügen des Pfeils '->' zwischen die Referenz und die erste Klammer.

Mehr zu Datenstrukturen findet man im Kamelbuch.

-- ChristianDuehl - 04 Aug 2004, 09 Aug 2004
Topic revision: r2 - 2004-08-09 - 12:30:10 - ChristianDuehl
 
Bitte die NutzungsBedingungen beachten.
Bei Vorschlägen, Anfragen oder Problemen mit dem PerlCommunityWiki bitten wir um WebBottomBarExample">Rückmeldung.