【发布时间】:2014-11-20 06:07:44
【问题描述】:
如何使用来自数组表的键创建哈希表?
我有这个数组:my @array = ("car","bus","bike");
我需要一个这样的哈希:
my %h = ( "car" => "1",
"bus" => "2",
"bike" => "3" );
谢谢
【问题讨论】:
-
你想完成什么?
如何使用来自数组表的键创建哈希表?
我有这个数组:my @array = ("car","bus","bike");
我需要一个这样的哈希:
my %h = ( "car" => "1",
"bus" => "2",
"bike" => "3" );
谢谢
【问题讨论】:
您可以使用散列切片来填充键/值,
my @array = ("car","bus","bike");
my %h;
@h{@array} = 1 .. @array;
【讨论】:
遍历数组的索引。
my %h;
for (0..$#array) {
$h{ $array[$_] } = $_ + 1;
}
这可以缩短为
my %h = map { $array[$_] => $_+1 } 0..$#array;
【讨论】: