根据this question的回答,在 Perl 5 中合并两个哈希可以通过以下方式完成:
%newHash = (%hash1, %hash2); %hash1 = %newHash;
或者:
@hash1{keys %hash2} = values %hash2;
另一方面,Perl 5.18 will introduce per process hash randomization .
第二种方法在 Perl 5.18 中使用仍然正确吗?
最佳答案
读完Re^2: Hash order randomization is coming, are you ready?后,答案是是。与之前一样,keys
、values
和 each
将在同一进程内迭代哈希值,生成相同的序列,如果哈希值在这期间没有改变。
关于perl - Perl 5.18+ 中的哈希合并方法受到哈希顺序随机化的影响吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14464147/