@配列名
perlでも配列変数を作成することができます。
$変数名[インデックス]
配列変数への値の代入は以下のように
$arg[0]=0; $arg[1]=1; $arg[2]=2;
します。でも、配列の数が10個とかに増えたときにこのような代入をするのは面倒です。
そこで
@配列名
という記法をつかって、以下のように
@arg = (0,1,2);
書くことができます。
@arg = (0,1,2); ($arg1,$arg2,$arg3) = @arg; #$arg1 = $arg[0]; #$arg2 = $arg[1]; #$arg3 = $arg[2];
@arg = (0,1,2); @arg2 = @arg; #$arg2[0] = $arg[0]; #$arg2[1] = $arg[1]; #$arg2[2] = $arg[2];
@arg = (0,1,2); @arg2 = (@arg,3,4,5); #$arg2[0] = $arg[0]; #$arg2[1] = $arg[1]; #$arg2[2] = $arg[2]; #$arg2[3] = 3; #$arg2[4] = 4; #$arg2[5] = 5;
@arg = (0,1,2); @arg2 = (3,@arg,4,5); #$arg2[0] = 3; #$arg2[1] = $arg[0]; #$arg2[2] = $arg[1]; #$arg2[3] = $arg[2]; #$arg2[4] = 4; #$arg2[5] = 5;
@arg = (0,1,2); @arg2 = (3,4,5,@arg); #$arg2[0] = 3; #$arg2[1] = 4; #$arg2[2] = 5; #$arg2[3] = $arg[0]; #$arg2[4] = $arg[1]; #$arg2[5] = $arg[2];
($arg1,$arg2,@arg) = (0,1,2,3,4,5); #$arg1 = 0; #$arg2 = 1; #$arg[0] = 2; #$arg[1] = 3; #$arg[2] = 4; #$arg[3] = 5;
注意
($arg1,@arg,$arg2) = (0,1,2,3,4,5); #$arg1 = 0; #$arg[0] = 1; #$arg[1] = 2; #$arg[2] = 3; #$arg[3] = 4; #$arg[4] = 5; #$arg2 = undef;
配列は勝手に伸びます。