一 array
1)实例
use strict;
use warnings;
my @myarray = ( 123 , " hello " , 456 , ' guy ' );
foreach ( @myarray )
{
print " $_ " ;
}
print " \n " ;
foreach my $item ( @myarray )
{
print " $item " ;
}
print " \n " ;
for ( my $i = 0 ; $i < scalar ( @myarray ); $i ++ )
{
print " $myarray[$i] " . " " ;
}
print " \n " ;
for ( 0 .. ($ # myarray))
{
print " $myarray[$_] " . " " ;
}
print " \n " ;
@myarray = ( @myarray , 789 );
print " @myarray\n " ;
push ( @myarray , " gril " );
print " @myarray\n " ;
unshift ( @myarray , ' 000 ' );
print " @myarray\n " ;
delete $myarray[1];
print "@myarray\n" ;
print "@myarray\n" ;
2)函数,如下:
3)注释:
1】使用@定义array,使用array的item时$array[n];
2】使用scalar来获得array的size;
3】$#获得最大的index,即size-1;
4】$_在for和foreach中表示当前item;
5】push/pop用来在array的最后加入和弹出item;
6】shift/unshift用来在array的前面删除和插入item;
7】split/john用来实现array和string间的转化;
8】delete可以用来删除item,例如delete $myarray[1];
二 map/hash
1) 实例:
use strict;
use warnings;
my %myhash = ( ' k1 ' , 100 , ' k2 ' , 200 );
# my %myhash = (k1=>100,k2=>200);
print %myhash ;
print " \n " ;
$myhash { ' k3 ' } = 300 ;
$myhash { ' k4 ' } = 400 ;
print %myhash ;
print " \n " ;
foreach my $key ( keys %myhash )
{
print $key . " indexes " . $myhash { $key } . " \n " ;
}
foreach my $value ( values %myhash )
{
print $value . " \n " ;
}
while (( my $key , my $value ) = each ( %myhash ))
{
print " $key indexes $value \n "
}
if ( exists $myhash { ' k1 ' }) { print " k1 is exist\n " ;}
delete $myhash { ' k1 ' };
print %myhash ;
print " \n " ;
2)函数,如下:
3)注释:
1】%用来定义map/hash;
2】对单个的key赋值是使用$,例如$myhash{'k3'} = 300;
3】keys获得所有的keys到array;
4】values获得所有的values到array;
5】迭代,每次返回一对key/value;
6】exists用来判断某个key是否存在;
7】delete用来删除指定的key,同时对应的value也被删除;
三 总
Array Functions
@array = ( ); Defines an empty array
@array = (“a”, “b”, “c”); Defines an array with values
$array[0] The first element of @array
$array[0] = a; Sets the first element of @array to a
@array[3..5] Array slice - returns a list containing the 3rd thru 5th
elements of @array
scalar(@array) Returns the number of elements in @array
$#array The index of the last element in @array
grep(/pattern/, @array) Returns a list of the items in @array that matched
/pattern/
join(expr, @array) Joins @array into a single string separated by expr
push(@array, $var) Adds $var to @array
pop(@array) Removes last element of @array and returns it
reverse(@array) Returns @array in reverse order
shift(@array) Removes first element of @array and returns it
sort(@array) Returns alphabetically sorted @array
sort({$a<=>$b}, @array) Returns numerically sorted @array
Hash Functions
%hash = ( ); Defines an empty hash
%hash = (a => 1, b=>2); Defines a hash with values
$hash{$key} The value referred to by this $key
$hash{$key} = $value; Sets the value referred to by $key
exists $hash{$key} True if the key/value pair exists
delete $hash{$key} Deletes the key/value pair specified by $key
keys %hash Returns a list of the hash keys
values %hash Returns a list of the hash values
完!