0
我很惊讶在PerlPerl是否以相反的顺序打印数组元素?
以下哈希阵列#!/usr/bin/perl
print "content-type: text/html \n\n";
# DEFINE A HASH
%coins = ("Quarter" , 25,
"Dime" , 10,
"Nickel", 5);
# LOOP THROUGH IT
while (($key, $value) = each(%coins)){
print $key.", ".$value."<br />";
}
产生以下输出
Nickel, 5
Dime, 10
Quarter, 25
我知道Perl有通过索引使用负数访问最后元素的能力,但在这里我们没有使用负数作为索引,为什么它会以相反的顺序打印哈希数组的内容?
aa,据我了解,首先它打印此键具有最小值/。 –
它打印他们没有保证或可辨别的顺序。你不能指望哈希中的任何顺序,这不是他们在那里。 –
'each'的Perl文档说*哈希条目以明显随机的顺序返回。实际的随机顺序在未来版本的Perl中可能会发生变化。* – Borodin