Perlの2次元配列メモ
Perlで二次元配列を動的に生成する場合を考える.
for( $i=0; $i<200; $i++){ for ($j=0; $j<@data1; $j++) { $data2[$i][$j] = $data1[$j]; } }
このように書くだけで,動的に二次元配列とすることができる.ここで
$j<@data1
は,@data1の要素数だけループを回している.
配列の要素数を取り出すときは以下のようにすればよい.
scalar(@data1); @data1+0;
いずれも同じ結果を返す.
2次元配列の場合は
# data2[][]の1つ目の[]の長さ scalar(@data2); @data2+0; # data2[][]の2つ目の[]の長さ scalar(@{$data2[0]}); @{$data2[0]}+0;
とすればよい.