配列の要素数を取得する

配列に現在含まれている要素数を取得する方法です。要素数を取得するには配列変数を別の変数に格納することで取得できます。ここでは Perl における配列の要素数を取得する方法を解説します。

(Last modified: )

配列の要素数を取得する

配列の要素数を取得するには次のように配列変数を変数に格納します。

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

my $length = @array;

配列変数を変数に格納することで現在の配列の要素数が変数に格納されます。今回は配列の要素数が 2 ですので、要素数として 2 が変数 $length に格納されます。変数に格納しなくても、配列の要素数が必要なところで直接配列変数名を記述されても大丈夫です。

配列の要素を、要素数の数だけ順に取得するには次のように記述できます。

my @str = ("A", "B", "C");

for (my $i = 0; $i < @str; $i++){
	print "$str[$i]\n";
}

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

サンプルコード

それでは簡単なサンプルを作成します。

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

my @str = ("A", "B", "C");
my $length = @str;

print "要素数 = $length\n";

for (my $i = 0; $i < @str; $i++){
	print "$str[$i]\n";
}

テキストエディタでプログラムを記述したあと sample.pl という名前で保存します。(文字コードは UTF-8 です)。コマンドプロンプトを起動し、プログラムを保存したディレクトリへ移動したあとで次のように実行します。

perl sample.pl

次のように実行結果が表示されます。

配列の要素数を取得する(1)

配列を作成したあと、配列変数を別の変数に格納して配列の要素数を取得し画面に出力しています。また繰り返し処理の条件式のところで配列変数を直接記述しています。

-- --

Perl における配列の要素数を取得する方法を解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。