|
my $addressbook = "addressbook"; my $book = new IO::File $addressbook or die "Cannot open $addressbook: $!\n"; my %address; while (<$book>) { chomp; my ($name, $address) = split /:/; $address{$name} = $address; } $book->close; foreach my $name (sort keys %address) { printf "%-20s | %s\n", $name, $address{$name}; } |
Mit dem Operator keys werden alle Schlüssel
eines assoziativen Arrays (in undefinierter Reihenfolge)
als Liste extrahiert. Alternativ gibt es auch values,
das alle Werte zurückliefert.
| |
Der Operator sort sortiert eine Liste und liefert
sie wieder als neue(!) Liste zurück. Das Sortierkriterium
läßt sich beliebig bestimmen -- dazu später mehr.
| |
Wenn die Reihenfolge keine Rolle spielt, ist each
effizienter zum Durchlaufen:
while (my ($name, $address) = each %address) { ... }
|
Copyright © 1996 - 2003 Andreas Borchert, in HTML konvertiert am 01.10.2003 |