Perl哈希

哈希

哈希是一种数据结构,和数组相似的是可以容纳任意多的值,并且可以按需取用,而她和数组的不同之处在于,检索方式不同,数组是以数字下标来检索,而哈希是以唯一的名字来检索。

  • 哈希的组成因素:一个个键-值对
    • 键:只能用普通的字符串表示,数字会被强制转换成字符串,2 -> ‘2’。(唯一性)
    • 值:可以是任何标量,整数,浮点数,字符串,undef等。(非唯一性)
    • 哈希表增大时,perl随机选取任意一项数据还是和原来一样快。

1. 访问哈希元素

1.1 访问单个哈希元素

  • 哈希变量的命名和其他的Perl标志符类似,可以使用字母,数字和下划线构成,但是不能以数字开头。
  • 哈希有自己的名字空间,$hash{“fred”} 和 &hash 毫无关联。(不建议使用相同名字)
  • 和访问数组类似,不过用花括号而非方括号来表示索引键,并且键表达式是字符串。
  • 我们可以通过索引外括号判断访问的数据类型结构,{哈希},[数组]
  • 建议哈希名称命名,可以在key-value间加上for;如 $work_id{‘fred’} = 5678, work_id for fred is 5678.
#!/usr/bin/perl
$hash{
   $some_key}; #读取$some_key中字符串(key),对应于%hash中的值
#单个元素赋值
$hash{
   'fred'}   = 'flintstone';   #如果'fred' key已经存在,新值会覆盖原值
$hash{
   'barney'} = 'rubble';       #如果'barney' key不存在,自动创建新键-值对(自动延展)
$name = $hash{
   'wilam'};           #如果访问不存在的键,将会返回 undef
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值