Estructuras anidadas

Listas Anidadas

Es posible crear estructuras de datos multidimensionales usando listas anónimas.

my $table = [ [1,2,3],[2,4,6],[3,6,9]];
Ahora es posible acceder a los elementos de $table con expresiones como:
print $table->[$x]->[$y];
Es opcional escribir la flecha entre dos corchetes:
print $table->[$x][$y];

Hashes Anidados

Es posible crear hashes multinivel anidando referencias a hashes anónimos:

$behaviour = {
  cat   => { nap => "lap", eat=>"meat"},
  dog   => { prowl => "growl", pool=>"drool"},
  mouse => { nibble=>"kibble"}
};

Para acceder a los datos se requiere una cadena de flechas:

print "A cat eats ",$behaviour->{cat}->{eat},"\n";

Al igual que para los arrays multidimensionales, las flechas después de la primera pueden ser suprimidas:

print "A mouse nibbles ",$behaviour->{mouse}{nibble},"\n";

En general las secuencias ]->{, }->[, etc. pueden ser abreviadas omitiendo la flecha: ]{, }[, etc.



Subsecciones
Casiano Rodríguez León
2009-10-04