我有一个代码,如下哈希印刷数量
@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个键)。