我有一個代碼,如下哈希印刷數量
@array = qw(Sam London George Washington Luke Shanghai);
my %where = @array;
my @d = keys %where;
my @c = values %where;
print "4. keys - @d values - @c \n";
我越來越
4. keys - George Luke Sam values - Washington Shanghai London
我應該得到4鍵 - 薩姆·喬治盧克值 - 倫敦華盛頓上海
然後我有
my ($a) = %where;
my $b = %where;
my $c = $b + 1;
print "6. $a $b $c \n"
爲什麼我會得到
6. George 2/8 3
因此,首先,爲什麼我在將數組更改爲哈希值時得到不正確的順序。 其次,我如何得到2/8和3.相反,我期待6和7,因爲散列中有6個元素(3個散列和3個鍵)。