配列に今どれだけの要素が詰まっているかカウントしたい。これには大きく二つの方法が用意されている。
「$#配列名
」とする方法と、スカラー値として値を得る方法の二つがある。前者と後者で得られる値が違う点に注意すること。「$#配列名
」は配列のインデックス(添え字)に忠実で、「最大数 – 1」の結果が返ってくるのに対し、後者は最大数がそのまま返ってくる。
サンプル
#!/usr/bin/perl
;#
;#配列の要素数を表示
;#
#---------------------------------------#
#準備
#---------------------------------------#
@array = (1..5); #1~5の値を入れる
#---------------------------------------#
#表示
#---------------------------------------#
#-- $#配列名 --#
print $#array, "\n";
#-- スカラー変数として処理 --#
$count = @array;
print $count, "\n";
#-- scalar関数を使うことでも上と同じ意味に --#
print scalar(@array), "\n";
実行結果
4
5
5
次のようにすることで配列の最後の要素を得ることが出来る。
$array[$#array];
このブログを応援する
お寄せいただいたお気持ちは全額サーバ代や次の記事を執筆するための原資として活用させていただいております。この記事が参考になった場合などぜひご検討ください。