配列の要素数

広告

配列に現在含まれている要素数を取得する方法を確認します。要素数を取得するには配列を別の変数に格納することで取得できます。具体的には次のように記述します。

my @array = ("1月", "2月");

my $length = @array;

配列を変数に格納することで配列の要素数が変数に格納されます。上記の場合であれば要素数として2が変数「$length」に格納されます。

注意すべき点としてはいったん変数に格納すると要素数が取得できますが、配列そのものを単に出力を行うと配列の要素数が出力されるわけではなく配列に含まれる要素が続けて出力されます。「@配列名」はあくまで配列全体を表しているのであって、「@配列名」が要素数そのものであるわけではありませんので注意して下さい。

なお配列の要素数を取得するには配列に含まれる最後の要素のインデックスから取得することも可能です。詳しくは「配列の最後のインデックス」を参照して下さい。

サンプルプログラム

では簡単なプログラムで確認して見ます。

test8-1.pl

use strict;
use warnings;
use utf8;
binmode STDIN, ':encoding(cp932)';
binmode STDOUT, ':encoding(cp932)';
binmode STDERR, ':encoding(cp932)';

my @array = ("1月", "2月");

my $length = @array;

print "要素数 $length¥n";
print @array;

上記を「test8-1.pl」の名前で保存します(文字コードはUTF-8です)。そしてコマンドプロンプトを起動し、プログラムを保存したディレクトリに移動してから次のように実行して下さい。

配列の要素数

( Written by Tatsuo Ikura )