#!/usr/bin/perl
use strict;
use warnings;
my %hash;
foreach ( 1 .. 10 ) {
$hash{$_} = $_;
}
foreach ( sort(keys %hash) ) {
print $_ . ": " . "$hash{$_}" . "\n" ;
}
When I execute the above code, the result is as below:
1: 1 10: 10 2: 2 3: 3 4: 4 5: 5 6: 6 7: 7 8: 8 9: 9
I expect "10: 10" to be the last one that is printed. I just need someone to explain why Perl gives me a surprise in this case.