Jeśli mam skrót w Perlu, który zawiera pełne i sekwencyjne mapowania całkowite (tj. Wszystkie klucze od 0 do n są odwzorowane na coś, bez kluczy poza tym), czy istnieje sposób przekształcając to w tablicę?Perl, przekonwertuj hasz na tablicę
Wiem, że mógłbym powtórzyć parami klucz/wartość i umieścić je w nowej tablicy, ale coś mówi mi, że powinien istnieć wbudowany sposób robienia tego.
** RANT OSTRZEŻENIE! ** Dlaczego każdy chce sortować klucze? Nie ma takiej potrzeby i sprawia, że algorytm jest o wiele wolniejszy! Sortowanie jest powolne! ** Odpowiedź runrig ** jest najlepsza tutaj. Będzie działać, jeśli skrót jest skąpy. Tablice zachowują porządek, ale są strukturami dostępu losowego. Nie pracujemy z połączonymi listami, ludźmi! – daotoad
Masz rację: jest sposób, aby to zrobić. Patrz [Odpowiedź Ether'a] (http://stackoverflow.com/questions/2907270/perl-convert-hash-to-array/2907469#2907469). :) To pytanie jest kolejnym powodem, dla którego istnieje różnica między kontekstem listy a tablicami.W połączeniu z plasterkami umożliwia konwersję między listami i hashe bez specjalnej magii lub iteracji, a imho jest jedną z najpotężniejszych funkcji Perla. –