[ Pobierz całość w formacie PDF ]
.Oto sposób tworzenia tablicy asocjacji od razu wpojedynczej deklaracji:@array = {{ulubione => "jab³ka",'te¿ dobre' => "pomarañcze",},{ulubione => "kukurydza",'te¿ dobre' => "groszek",'nielubiane' => "rzepa",},{ulubione => "kurczak",'te¿ dobre' => "wo³owina",},};print $$array[0]{ulubione};jab³kaTworzenie tablic asocjacji na bie¿¹coTablice asocjacji mo¿na te¿ tworzyæ, stopniowo przypisuj¹c asocjacje elementomtablicy:@array[0] = { ulubione => "jab³ka",'te¿ dobre’ => "pomarañcze"};@array[l] = { ulubione => "kukurydza",'te¿ dobre' => "groszek",'nielubiane’ => "rzepa"};@array[2] = { ulubione => "kurczak",'te¿ dobre’ => "wo³owina"};print $array[0]{ulubione};jab³kaTak samo jak w przypadku wszelkich innych tablic, mo¿na u¿yæ metody push:push @array { ulubione => "jab³ka",'te¿ dobre' => "pomarañcze"};push @array { ulubione => "kukurydza",'te¿ dobre' => "groszek",'nielubiane' => "rzepa"};push @array { ulubione => "kurczak",'te¿ dobre' => "wo³owina"};print $array[0]{ulubione};jab³kaOto przyk³ad, w którym odczytujemy pary klucz+wartoœæ i rozbijamy je na tablicêasocjacji:$data[0] = "ulubione:jab³ka, te¿ dobre:pomarañcze";$data[l] = "ulubione:kukurydza, te¿ dobre:groszek, nielubiane:rzepa";$data[2] = "ulubione:kurczak, te¿ dobre:wo³owina";for $loopindex (0.$$#data) {for $element (split ',', $data [$loopindex]){($key, $value) = split ':', $element, $array [$loopindex] {$key} = $value;}print $array [0] {'te¿ dobre'};pomarañczeSiêganie do tablic asocjacjiDo tablic asocjacji siêgamy, u¿ywaj¹c po prostu indeksu tablicy i kluczawskazanej tym indeksem asocjacji:@array[0] = {ulubione => "jab³ka", 'te¿ dobre’ => "pomarañcze"};@array[l] = {ulubione => "kukurydza", 'te¿ dobre' => "groszek", 'nielubiane' =>"rzepa"};@array[2] = {ulubione => "kurczak", 'te¿ dobre' => "wo³owina"};print $array[0]{ulubione};jab³kaOto przyk³ad, w którym wyœwietlamy wszystkie elementy tablicy asocjacji,tworz¹c pêtlê po wszystkich elementach:@array[0] = {ulubione => "jab³ka", 'te¿ dobre' => "pomarañcze"};@array[l] = {ulubione => "kukurydza", 'te¿ dobre' => "groszek", 'nielubiane’ =>"rzepa"};@array[2] = {ulubione => "kurczak", 'te¿ dobre' => "wo³owina"};for $loopindex (0.$#array) {print "array[$loopindex]: {";for $key (keys %{$array[$loopindex]}) {print "'$key' => '$array[$loopindex]{$key}' ";}print "}\n";}array[0] = {'ulubione' => 'jab³ka' 'te¿ dobre' => 'pomarañcze' };array[l] = {'ulubione' => 'kukurydza' 'te¿ dobre' => 'groszek' 'nielubiane' =>'rzepa' }array[2] = {'ulubione' => 'kurczak' 'te¿ dobre' => 'wo³owina' }Ten sam efekt mo¿emy uzyskaæ, stosuj¹c wskaŸniki zamiast indeksu pêtli:@array[0] = { ulubione => "jab³ka",'te¿ dobre' => "pomarañcze"};@array[l] = { ulubione => "kukurydza",'te¿ dobre' => "groszek",'nielubiane' => "rzepa"};@array[2] = { ulubione => "kurczak",'te¿ dobre' => "wo³owina"};for $hashreference (@array) {print "{";for $key (sort keys %hashreference) {print "'$key' => '$hashreference->{$key}'";}print "}\n";}{'ulubione' => 'jab³ka' 'te¿ dobre' => 'pomarañcze' };{'ulubione' => 'kukurydza' 'te¿ dobre' -> 'groszek' ' nielubiane' =•> 'rzepa'}{'ulubione' => 'kurczak' 'te¿ dobre' -> 'wo³owina' }Deklarowanie asocjacji tablicJeœli s¹ potrzebne dane indeksowane, dostêpne przez wartoœæ kluczow¹, mo¿nazastosowaæ asocjacjê tablic.Spoœród wszystkich czterech kombinacji ³¹czenia tablic z asocjacjami w³aœnieasocjacje tablic s¹ najrzadziej spotykane.Poni¿szy przyk³ad pokazuje deklarowanie asocjacji tablic w jednym kroku:@hash = (owoce => ["jab³ka", "pomarañcze"],warzywa => ["kukurydza", "groszek", "rzepa"],'miêso' => ["kurczak", "szynka"],);print $hash(owoce)[0];jab³kaTworzenie asocjacji tablic na bie¿¹coAsocjacje tablic mo¿na tworzyæ na bie¿¹co
[ Pobierz całość w formacie PDF ]