列表和数组变量
列表:包含在括号里的一序列的值,可以为任何数值或者空,如:("A",2.8,"hello",6)
,空列表:()
数组:列表存贮在数组变量中,数组变量以字符“@”开头,如:@array=("a",1,"b",2,"","c")
注意:数组创建初始值为空列表:();
因为Perl用@和$区分数组变量和简单变量,所以同一个名字可以同时用于数组变量和简单变量,但是容易混淆,不推荐
数组的存取:对数组中的值通过下标存取。试图访问不存在的数组元素,则结果为null,但如果给超出数组大小的元素赋值,则数组自动增长,原来没有的元素值为null。
@array = (1,2,3,4);
$array[3] = 5; #now @array is (1,2,3,5)
$scalar =$array[4]; #now scalar = null;
$array[6] = 17; #now @array is (1,2,3,5,"","",17)
数组的拷贝:@array = @array2;
数组赋值:
@list1 = (2,3,4);
@list2 = (1,@list1,5); #now @list2 is (1,2,3,4,5)
数组对简单变量的赋值:
@array = (5,6,7);
($var1 ,$var2) = @array; $var1 = 5,$var2 = 6,7被忽略
@array = (5,6);
($var1 ,$var2,¥var3) = @array; $var1 = 5,$var2 = 6,$var3 = ""
从标准输入(STDIN)给变量赋值:
$var = <STDIN>;
@array = <STDIN>; # ^D为结束输入的符号
print $array[2];