相关疑难解决方法(0)

为什么Perl的each()第二次不遍历整个哈希?

我有一个简单的脚本试图了解Perl中的哈希.

#!/usr/bin/perl

my %set = (
    -a => 'aaa',
    -b => 'bbb',
    -c => 'ccc',
    -d => 'ddd',
    -e => 'eee',
    -f => 'fff',
    -g => 'ggg'
);

print "Iterate up to ggg...\n";
while ( my ($key, $val) = each %set ) {
    print "$key -> $val \n";
    last if ($val eq 'ggg');
}
print "\n";

print "Iterate All...\n";
while ( my ($key, $val) = each %set ) {
    print "$key -> $val \n";
}
print "\n";
Run Code Online (Sandbox Code Playgroud)

我对输出感到惊讶: -

Iterate …
Run Code Online (Sandbox Code Playgroud)

iteration perl hash

6
推荐指数
2
解决办法
2458
查看次数

标签 统计

hash ×1

iteration ×1

perl ×1