配列に、現在どれだけの要素が含まれているのか、その数が知りたいことは良くあります。Perlの配列ではどうやって知るのでしょうか?
にしし ふぁくとりー

にししの Perl/CGI Tips ふぁくとりー

にししふぁくとりーPerl/CGI Tips → このページ

配列関連TIPS

配列の長さ(大きさ)を知るには?

Perlでは、foreach文を使えば、配列の大きさを知らなくても、配列のすべての要素に対してループで処理できます。 しかし、事前に配列の大きさを知りたいことも良くありますね。 もちろん、配列の大きさも簡単に知ることができます。

Perl SOURCE 1

Perlでは、配列 @array の最後の要素番号を「 $#array 」で知ることができます。
Perlの配列番号は 0 から始まるので、「最後の要素番号」に 1 を加えた数が、配列の大きさ(要素数)ということになります。
@array = ( "a", "b", "c" );
print "配列の大きさは" . ( $#array + 1 ) . "です。\n";
上記のサンプルソースの場合は、「配列の大きさは 3 です。」と表示されます。$#array の値は 2 になりますから。

Perl SOURCE 2

配列そのものをスカラー変数に代入することでも、配列の大きさを得ることができます。
@array = ( "a", "b", "c" );
$arraylength = @array;
print "配列の大きさは" . $arraylength . "です。\n";
上記の「スカラー変数への代入」場合は、最後の要素番号ではなく配列の大きさが得られますので、1を加える必要はありません。

SAMPLE SOURCE

ソースコード19 , 出力結果19
2004/03/09. Tue.

このページに記載の内容は、必ずしも正しいとは限りません。ご注意下さい。
もっと良い方法がありましたら、ぜひ、教えて頂けるとありがたいです。
製作者にししへのご連絡は、メールなどでお送り下さい。匿名のコメントも送信できます。
どのページへもリンクは歓迎します。複製・転載はご遠慮下さい。