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