我写了这个简单的子版,它的作品已售罄:
sub search_dispatch_table
{
my ($href1, $href2) = @_;
foreach my $key (keys %$href1)
{
return $key if exists $href2->{$key};
}
return undef;
}
我只想返回href1
中存在的href2
的第一个键。
有更好的方法吗?
答案 0 :(得分:2)
您没有指定您希望用来评估哪种解决方案更好的标准。
假设您的意思更快",您可以使用each
代替keys
加速最佳情况,但这是关于它的。
sub search_dispatch_table {
my ($href1, $href2) = @_;
while (my ($key) = each(%$href1)) {
if (exists($href2->{$key})) {
keys(%$href1); # Reset iterator.
return $key;
}
}
return undef;
}