in reply to Re^2: sorting hash of hashes
in thread sorting hash of hashes
Is this sort works also for characters?
Yes, by default, sort sorts alphabetically. Consider:
12:36 >perl -Mstrict -wE "my @array = ('c', 'bb', 'aaa'); say for sort + @array;" aaa bb c 12:37 >
Here sort puts 'aaa' first, because 'a', its first character, comes alphabetically before 'b' and 'c'. Similarly:
12:37 >perl -Mstrict -wE "my @array = ('3', '22', '111'); say for sort + @array;" 111 22 3 12:39 >
puts '111' first because '1' comes alphabetically before '2' and '3'.
Note that sort @array is shorthand for sort { $a cmp $b } @array; cmp compares alphabetically. To sort numerically, use <=> instead of cmp:
12:39 >perl -Mstrict -wE "my @array = ('3', '22', '111'); say for sort + { $a <=> $b } @array;" 3 22 111 12:43 >
See:
Hope that helps,
| Athanasius <°(((>< contra mundum | Iustus alius egestas vitae, eros Piratica, |
|
|---|