その質問の答えが正解として記録Perlの配列

課題です。 のコードは、Perlプログラムの配列 @arr (最初の三文字から"配列"). この配列は一部の値です。 ったかを知る必要がこの配列に含まれます。

する方法は幾つかあるが、今回はこうした課題を解決

用のスカラーコ

ご利用の場合、配列のスカラーの文脈で、この値は要素数配列は:

my $number_of_elements = scalar(@arr);

例プログラム:

▶ Run
#!/usr/bin/perl

my @arr = ('one', 'two', 'three');

print scalar(@arr);

のプログラムを表示番号3.

スカラーコンテクストは得られないようになったわけで scalar()が、一部の演算の変更を伴わないのは、例えば、加減算のゼロまたは増殖/分単位

my $number1 = @arr + 0;
my $number2 = @arr - 0;
my $number3 = @arr * 1;
my $number4 = @arr / 1;

利用の変数の指標の最後の要素

別の言い方を見出しの長さ配列は変数に関連する配列を含有する件数の最後の要素となります。 の場合配列と呼ばれ @arrは、このような変数が呼ばれます $#arr. 最初の要素は、Perlの配列の0番ので、多数の項目を追加する必要がありますこの変数は1になります。

my $number_of_elements = $#arr + 1;

カウント方法の異なる要素とundef

などに含まれる配列の型になります。 ができる単純な文字列や数および複雑な構造物です。

配列に含まれる場合は、値undef、そのものです。 たとえば配列を含む4つの要素

my @arr = (1, undef, 3, undef);

間違った方の数はlength()

ここではサンプルプログラム。 のプログラムを表示番号1で間違ってい length() 適用の配列要素の数を返しまいます。

▶ Run
#!/usr/bin/perl

my @arr = ('one');

print length(@arr);

しかし、これは誤を前に参考になりました。 を検証するためにこのチェックできる配列 my @arr = ('one', 'two', 'three') length()の戻ります1.

length() 用の配列要素の数を返しますと、桁の数です。 配列に含まれる場合は9以下の項目を length(@arr) が返さ1の配列に含まれる場合は10-99要素 length(@arr) を返し2ます。

関連する話題

その他の記事