我有一個數組散列。哪種方式是循環最有效和最快速的方式。更有效地循環散列數組
my %h1 = (
C1 => ['3','1','2'],
C2 => ['6','2','4'],
C3 => ['8', '1'],
);
OPTION 1
foreach my $key (keys %HoA) {
print "Articles in group $key are: ";
foreach (@{$HoA{$key}}) {
print "$_\n";
}
}
OPTION 2
while(my ($k, $v) = each %HoA) {
print "Articles in group $k are: @$v\n";
}
哪一個會救我的時間,如果我將通過一個巨大的家鄉地址循環。
你的基準測試告訴你什麼? – SecurityMatt
目前我有一個子程序,我使用嵌套的for-loop(選項1)循環使用一個大的HoA。使用嵌套的for-loops,子程序需要約。運行5-12秒。我還沒有嘗試使用while循環來循環HoA。 – cooldood3490
這兩個不相同。選項2不會打印數組的內容。 – Borodin