编程学习biancheng.45soft.com 本站提供了各种在线教程和资料,供大家学习与参考.
编程学习
当前位置: 主页 > Perl > 数组和散列 > Perl 数组和散列 生成数组的散列

Perl 数组和散列 生成数组的散列

下面是填充一个数组的散列的技巧。从下面格式的文件中读取出来:

flintsotnes:    fred barney wilma dino
jetsons:   george jane elroy
simpsons:   homer marge bart

你可以用下列两个循环之一:

while( <> ) {
     next unless s/^(.*?):\S*//;
     $HoA{$1} = [ split ];
}

while ( $line = <> ) {
     ($who, $rest) = split /:\S*/, $line, 2;
     @fields = spilt ' ', $rest;
     $HoA{$who} = [ @fields ];
}

如果你有一个子过程叫 get_family,它返回一个数组,那么你可以用下面两个循环之一填充 %HoA:

for $group ( "simpsons", "jetsons", "flintstones" ) {
     $HoA{$group} = [ get_family($group) ];
}

for $group ( "simpsons", "jetsons", "flintstones" ) {
     @members = get_family($group);
     $HoA{$group} = [ @members ];
}

你可以用下面的方法向一个已存在的数组追加新成员:

push @{ $HoA{flintstones}}, "wilma", "pebbles";



编程学习 Perl 数组和散列 生成数组的散列 转载请保留此行.谢谢.

Perl