One addition to the preceding good advice. If you find yourself having to re-sort the same(sup>1*) hash more than once in your code, a useful optimisation is to keep an array that contains the keys in their sorted order and use that the second and subsequent times.
my %hash = ( your => 1, data => 2, goes = 3, here => 4 ); my @sorted_keys = sort keys %hash; for( @sort_keys ) { print $hash{ $_ }; }
1 If you only change the values, ten you can re-use @sorted_keys ok, but if you add or delete keys to/from %hash, then @sorted_keys would need to be regenerated. This is only of real benefit if
For small hashes, or those where the keys are constantly changing, or if your only iterating the hash once, this idea is best forgotten :)
In reply to Re: SORT ASSOC ARRAY
by BrowserUk
in thread Sort assoc array
by rowhiteny
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |