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