use strict; use warnings; my @items = (["dog", 20], ["desk", 10], ["cow", 150]); print "By name:\n"; print "$_->[0]: $_->[1]\n" for sort {$a->[0] cmp $b->[0]} @items; print "\nBy weight:\n"; print "$_->[0]: $_->[1]\n" for sort {$a->[1] <=> $b->[1]} @items; #### use strict; use warnings; my %items = (dog => 20, desk => 10, cow => 150); print "By name:\n"; print "$_: $items{$_}\n" for sort {$a cmp $b} keys %items; print "\nBy weight:\n"; print "$_: $items{$_}\n" for sort {$items{$a} <=> $items{$b}} keys %items; #### By name: cow: 150 desk: 10 dog: 20 By weight: desk: 10 dog: 20 cow: 150