shift関数:配列の先頭の要素を取り出す<

Perl で用意されている組み込み関数の一つである shift 関数の使い方です。 shift 関数は対象となる配列の先頭の要素を取り出します。

(Last modified: )

shift関数の書式と基本的な使い方

shift 関数は次のように定義されています。

shift
shift(ARRAY)
配列の先頭の要素を取り出します。要素数は1つ減ります。

パラメータ:
  ARRAY  対象の配列
戻り値:
  配列の先頭の要素

1 番目の引数には対象となる配列が格納された配列変数を指定します。配列に含まれている先頭の要素を取得し、要素数を 1 つ減らします。もし要素が含まれていなかった場合は undef が返されます。

具体的には次のように記述します。

my @city = ("東京", "大阪");
my $val = shift(@month);

この場合は先頭の要素に格納されている "東京" を取得し変数 $val に格納します。配列は要素が 1 つ減って要素が 1 つになります。

サンプルコード

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

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

my @pref = ("東京都", "大阪府", "北海道");

while (my $val = shift(@pref)){
  print "$val\n";
}

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

perl sample.pl

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

shift関数:配列の先頭の要素を取り出す(1)

shift 関数を使って配列の先頭から要素を一つずつ取得し画面に出力しました。

-- --

Perl で用意されている組み込み関数の一つである shift 関数の使い方について解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

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