如何以关联方式将两个数组合并在一起;一个数组具有键列名称,另一个数组具有值?
我试图将一个数组推到另一个数组上,只将它们作为列表附加,不将它们关联在一起。任何帮助将不胜感激。谢谢!
my @var1 = {'COL1', 'COL2', 'COL3'};
my @var2 = { '1' , '2' , '3' };
...
new array %var3 = {'COL1' => '1', 'COL2' => '2', 'COL3' => '3'}
答案 0 :(得分:3)
使用哈希切片:
my %var3;
@var3{ @var1 } = @var2;
答案 1 :(得分:3)
首先是一些评论。数组使用简单的括号(
和)
。
您可以使用哈希切片构建哈希:
my @keys = ('COL1', 'COL2', 'COL3');
my @values = ( '1' , '2' , '3' );
my %hash ;
@hash{@keys} = @values ;
这会提供您想要的所需哈希值。