2007-01-28记录
默认情况下如果不指定文件句柄,将输出到STDOUT
可以通过select指定输出文件句柄
select LOG;
print "hello world\n";
哈希
哈希是一种数据结构,和数组类似,但索引不是数字,而是名字,索引叫做key,这些keys是字符串。
在哈希中是没有顺序的
keys和values通常为标量,keys通常转换为字符串
keys是唯一的,但values可以重复
访问哈希元素
$hash{$one_key}
访问不存在的hash元素则得到undef
引用整个hash,使用%,如%family;
hash值在列表上下文中是一个key/value对的列表
@array=%one_hash;
@array=reverse %one_hash;
大箭头符号=>
哈希函数
keys函数
values函数
keys %hash;
返回hash的所有keys
values %hash;
返回hash的所有values
在标量上下文中,keys返回key/value对的个数
each函数
返回key/value对的2元素列表
while(($key,$value)=each %hash){
print "$key=>$value\n";}
exists函数
if(exists $hash{$key}){
print "there is a key\n";}
delete函数
delete $book{$person};
将给定key和value从hash中删除
不支持整个hash内插,比如不支持print "this is %hash\n";
在Perl中,%是输出格式符