我有一个多维数组:
@multarray = ( [ "one", "two", "three" ],
[ 4, 5, 6, ],
[ "alpha", "beta", "gamma" ]
);
Run Code Online (Sandbox Code Playgroud)
我可以访问 @multarray[0]
[
[0] [
[0] "one"
[1] "two"
[2] "three"
]
]
Run Code Online (Sandbox Code Playgroud)
甚至 @multarray[0][0]
"one"
Run Code Online (Sandbox Code Playgroud)
但是我如何访问说每个子数组的第一个子元素?类似于multarray[*][0]产生的东西:
"one"
4
"alpha"
Run Code Online (Sandbox Code Playgroud)
谢谢!
您可以使用map和dereference每个数组:
use warnings;
use strict;
use Data::Dumper;
my @multarray = (
[ "one", "two", "three" ],
[ 4, 5, 6, ],
[ "alpha", "beta", "gamma" ]
);
my @subs = map { $_->[0] } @multarray;
print Dumper(\@subs);
__END__
$VAR1 = [
'one',
4,
'alpha'
];
Run Code Online (Sandbox Code Playgroud)
另见:perldsc