Perl:你如何一个接一个地打印2个数组的内容?

时间:2013-10-26 21:35:33

标签: arrays perl

假设我有2个阵列。

@a1= qw (1, 2, 3);
@a2= qw (a, b, c);

如何以下列方式打印这些数组中的项目:

1 a
2 b
3 c

编辑:应该注意的是,项目数量和数组内容都不知道。

3 个答案:

答案 0 :(得分:3)

尝试这样做

use Modern::Perl;

my @a1 = qw (1 2 3);
my @a2 = qw (a b c);
say join " ", ($a1[$_], $a2[$_]) for 0..$#a1;

(使用,时)不要放qw//

如果您更喜欢简单的旧式:

my @a1 = qw (1 2 3);
my @a2 = qw (a b c);
print join(" ", ($a1[$_], $a2[$_])) . "\n" for 0..$#a1;

答案 1 :(得分:2)

my @a1 = qw (1 2 3);
my @a2 = qw (a b c);
print "$a1[$_] $a2[$_]\n" for 0..$#a1;

假设它们的长度相同。

答案 2 :(得分:0)

要解决数组的未知大小,您可以找到数组的长度,并在您选择的循环结构中打印出类似这样的内容:

//pseudocode

print(array1[0] + array2[0]);

只要数组长度相等,就可以这样做。