perl中数组与哈希的差别是:哈希是按照名字来访问它们的标量的,而不是像数组那样使用数字标号进行访问。
hash的定义用%,数组的定义用@。
对hash结构进行赋值:
%author;
$author{anne}='franker'
逗号箭头运算符,即= >;
利用;箭头对hash进行初始化:
%food=('apple'=>'fruit','pear'=>'fruit','carrot'=>'vegetable');
从hash中读取元素:
print $author{anne};
使用k e y s函数来检索作为列表返回的哈希结构的所有关键字,然后可以查看该列表,找出哈希结构的所有元素。在哈希结构的内部,它的关键字并不按照特定的顺序进行存放,k e y s函数返回的关键字也不使用特定的顺序。
例子 :
my %movies=('sinning'=>'kubirck','The commenders'=>'Demilks');
for $files(keys %movies){
print$files."/n";
}
列表与hash结构:
每当哈希结构用于列表环境中时, P e r l会将哈希结构重新变为由关键字和值组成的普通列表。该列表可以被赋予数组
my %movies=('sinning'=>'kubirck','The commenders'=>'Demilks');
my @data=%movies;
hash之间的拷贝:
%myolderhash=%newhash;