有没有一种方法可以计算同时也是数组元素的哈希值



我有一个元素数组(@codes),其中一些元素是散列中的值(%records),但是散列中也有不包含在数组(@code)中的值。

有没有一种方法可以计算%记录中的哈希键的数量,其中对应的哈希值是数组@codes的一个元素?如果可能的话,我希望在不迭代循环的情况下完成此操作。谢谢

作为如何使用map执行此操作的示例:

#!/usr/bin/perl
use strict;
use warnings;
my %records = (
    'one'   => 1,
    'two'   => 2,
    'three' => 3,
);
my @codes = ( 'one', 'three', 'fake' );
my %seen = map { $_ => 1 } @codes;
print scalar grep ( $seen{$_}, keys(%records) );

但不要抱有任何幻想——这仍然是一个循环,它只是隐含在map函数中。

最新更新