根据这个问题的答案,在Perl 5中合并两个哈希值可以通过以下两种方式完成:
%newHash = (%hash1, %hash2); %hash1 = %newHash;
或:
@hash1{keys %hash2} = values %hash2;
另一方面,Perl 5.18将引入每个进程的哈希随机化。
第二种方法在Perl 5.18中仍然是正确的吗?
看完Re^2:哈希顺序随机化即将到来,你准备好了吗?,答案是是。如前所述,keys
, values
和each
将在相同进程内迭代哈希产生相同的序列,如果其间哈希值没有更改。