背景
我试图将这四行代码提取到一个函数中:
my @firstList = split /\s+/, $doubleArray{A_I}{B_I};
@firstList = shuffle(@firstList);
my @secondList = split /\s+/, $doubleArray{A_I}{C_I};
@secondList = shuffle(@secondList);
由于唯一的功能区别是二维数组的第二个索引,因此我想将第二个索引(“B_I”和“C_I”)传递给函数。
建议的解决方案
换句话说,我想制作一个如下所示的功能:
my funkyFunc($){
my $index = shift;
my @list = split /\s+/, $doubleArray{A_I}{$index};
@list = shuffle(@list);
return @list;
}
我打算这样使用它:
my @firstList = funkyFunc("B_I");
my @secondList = funkyFunc("C_I");
但是,我不确定 perl 将如何解释"B_I"
or "C_I"
,或者同样地B_I
and C_I
。由于这种复杂性,我想知道...
问题
perl 中有没有办法传入数组索引的名称?