列表和数组:
列表是存储标量的有序集合,标量不可变,可以做哈希表键值
把列表里的东西都放在一个格子,我把数组里的东西每个分别放在一个格子里。
特殊的数组索引:
数组中的下标是数字,或者结果可以转为数字的任意表达式
$#数组名表示最后一个元素的索引值,即元素个数减一
范围操作符:..
(1..5)表示(1,2,3,4,5)
注意只能向上计数,如(5..1)无法表示
(1.7..5.7)这时会将小数点后面的去掉
列表的表示:圆括号,逗号相隔
qw简写:
使用qw可以省去输入很多引号的麻烦
qw(fred barney betty wilma)
qw表示“quoted word”,所以在qw创建的列表中字符串都加入了单引号,因为是单引号,所以\n,$fred之类的不应该出现,因为无法识别,而且空白的字符会被删除,剩下的都是列表元素
qw可以使用很多其他的定界符进行定界,qw/fred wang jing/或者qw{fred wang jing}或者qw[fred wang jing]等
列表的赋值:
($fred,$barey)=qw<fred wang>
以上就是列表元素的赋值
当元素个数多于值的个数时,多出来的元素会被设置为undef
当元素个数少于值的个数时,多出来的值会被忽略掉
@的使用:
@表示all of the
@rocks=qw/fred wang jing/;
push和pop方法:
@array=5..9;
$fred=pop(@array);#这里的fred为9
如果为空数组时,pop返回undef
push(@array,0);
shift和unshift操作是对数组头部的对应操作,不再复述
splice操作:从中间任意位置删除
@array=qw(fred dino betty barney)
@removed=splice @array 2;
@removed此时为(betty)
@array此时为(fred dino barney)
foreach()很简单,不再讲述。
perl最喜欢用的默认变量:$_
表示所有的元素
#!/usr/bin/perl -w
use strict;
my @array=qw(fred grab wang jing);
foreach(@array)
{
print $_,"\n";
}
还有reverse和each等操作和上面类似。