小时代5-perl哈希hash的用法介绍

基本用法

    #初始化%h为空数组
    %h={};
    #用数组初始化%h为a=>1,b=>2
    %h=(‘a‘,1,‘b‘,2);
    %h=(‘a‘=>1,‘b‘=>2);
    #如果key是字符串,可以省略引号
    %h=(a=>1,b=>2);
    #用{}来访问
    print “$h{a}n”;
    #打印
    $h{b}=‘2b‘;
    print “$h{b}n”; #打印2b
    #删除key用delete
    delete$h{b};  #从$h删除‘b‘

清空Perl Hash

    undef %h;

得到hash的所有键值

    #得到所有keys,顺序取决于hash函数,或者说是乱序
    @all_keys=keys%h;
    #所有键值,是按hash的值从大往小排列的。值的比较是数字比较(比如说,10>9)
    @all_keys=sort{$h{$b} => $h{$a}}(keys%h);

判断Perl Hash是否包含key

    exists($h{$key});

Perl Hash的长度

    $hash_size=keys%h #把%h的长度放到$hash_size中
    print scalar keys %h,"n"; #打印%h的长度。这里用了scalar来返回数组长度。

遍历一个Perl Hash

    while(my($k,$v)=each%h){print"$k--->$vn";}

Reference引用
Reference类似于C/C++的指针

    $h_ref=%h;    #获得一个hash的reference,
    %aHash=%{$h_ref};   #把hash reference当成hash用
    $value=$h_ref->{akey}; #这个和%h{akey}是一样的

传递Perl Hash到函数
一般都是传递一个reference到函数

    %h=(); $h{a}=1; foo(%h);
    print $h{b},"n"; #打印出2。这个值来自于函数foo()
    sub foo{
     my ($h)[email protected]_;
     print $h->{a},"n"; #打印出1
     $h->{b}=2;
    }

函数返回hash,或者hash引用(hashreference)

     sub foo{
     my %fh;
     $fh{a}=1;
     return %h;
    }
    my %h=foo();
    print "$h{a}n"; #打印出1

但是这样等于把整个hash从%fh复制到了%h,效率比较低。可以考虑返回hash的引用:
sub foo{
my %fh;
$fh{a}=1;
return %fh;
}
my $hr=foo();
print "$hr->{a}n"; #打印出1.
my %h=%{foo()} #如果就是想复制,也可以用这种方法。不用担心在sub foo里的%fh是局部变量,Perl会自动管理内存。它会发现%fh被$hr引用,就不会清理%fh的内存,并且$hr失效后释放内存。
www.hwmqh.com
www.rhliv.com
www.bbilo.com
www.jdcvv.com
www.vqjqu.com
www.ecbga.com
www.urukw.com
www.jcukg.com
www.yrikt.com
www.bwjvy.com
www.vrtyo.com
www.jltwy.com
www.mvxjd.com
www.spuyn.com
www.xjfpi.com
www.ewkhc.com
www.gflin.com
www.xtabm.com
www.dvkgn.com
www.cbidb.com
www.yximh.com
www.hxxja.com
www.ebwqe.com
www.zrdqs.com
www.arzbc.com
www.orxap.com
www.dqbky.com
www.wqrfc.com
www.ipnhe.com
www.vwnwu.com
www.rqzzk.com
www.cjjhl.com
www.titph.com
www.xpiyc.com
www.iefjh.com
www.ajieq.com
www.ndnbg.com
www.fpdpl.com
www.lrroc.com
www.yikgs.com
www.rutbx.com
www.qdgal.com
www.xwhhr.com
www.jdzic.com
www.kvxcp.com
www.jnzwb.com
www.fveqr.com
www.bnnyo.com
www.wyehw.com
www.xagbe.com
www.cedcj.com
www.tzfxh.com
www.ugrfc.com
www.hveoh.com
www.ofmra.com
www.sfevm.com
www.fvvsd.com
www.rutpi.com
www.whpxf.com
www.pudmt.com
www.bcwcm.com
www.faqcr.com
www.uuwbe.com
www.ykxef.com
www.hwyme.com
www.lujck.com
www.tzsib.com
www.fckyq.com
www.vzxuk.com
www.fkygj.com
www.klecr.com
www.zinwp.com
www.ufahg.com
www.vn7869.com
www.yuats.com
www.vn5573.com
www.zccfi.com
www.cdvsz.com
www.mdqgu.com
www.ffrtb.com
www.bicwn.com
www.viryy.com
www.qcmuj.com
www.gttlc.com
www.xgeuz.com
www.suoug.com
www.yrdwj.com
www.rmnzf.com
www.bamdz.com
www.fwrxr.com
www.exxre.com
www.uwlne.com
www.dbeyg.com
www.qertg.com
www.hocpd.com
www.bmvya.com
www.hmhns.com
www.qhdip.com
www.ntfty.com
www.kvfyu.com
www.gdydm.com
www.wyflu.com
www.cnprr.com
www.ypzzv.com
www.xunjm.com
www.esvfm.com
www.kzkdm.com
www.vycaa.com
www.txzeb.com
www.udvym.com
www.kmkme.com
www.yngne.com
www.bqjkk.com
www.bkjil.com
www.dozbl.com
www.hcuoa.com
www.jypxa.com
www.ogvsy.com
www.fizlg.com
www.dvkky.com
www.vpxbx.com
www.fplwt.com
www.oamud.com
www.jqdrw.com
www.folyq.com
www.dkssg.com
www.mnucb.com
www.cpjgy.com
www.kswtp.com
www.kbfcz.com
www.oqmse.com
www.ofije.com
www.esvbb.com
www.qmswq.com
www.aeodn.com
www.qhmmq.com
www.gllqc.com
www.xttmd.com
www.exhff.com
www.ttckq.com
www.fwaqf.com
www.bbufl.com
www.kyxxh.com
www.phqpx.com
www.pohjw.com
www.wjeln.com
www.iahue.com
www.wolnd.com
www.ryiap.com
www.tmfvs.com
www.ozvhx.com
www.yuowp.com
www.ryzyg.com
www.kvdfo.com
www.potxf.com
www.zrlpc.com
www.ijvqs.com
www.whprz.com
www.ehdrt.com
www.dkdvy.com
www.ytjlp.com
www.vgcgh.com
www.ikqlc.com
www.vwlcj.com
www.sxbmt.com
www.dkqrh.com
www.fkvre.com
www.gnxzj.com
www.wqilg.com
www.unnmh.com
www.xrifa.com
www.ozsnc.com
www.ykjat.com
www.jvhwb.com
www.tdnpe.com
www.bskto.com
www.jzzyj.com
www.efzop.com
www.wukkz.com
www.xfvpb.com
www.jmqry.com
www.xrbnn.com
www.sernl.com
www.tsqth.com
www.qgjfm.com
www.rgusf.com
www.wkopl.com
www.rfued.com
www.cmrkw.com
www.jfpch.com
www.qtmdy.com
www.lgxyb.com
www.hmvty.com
www.aybfm.com
www.upuaj.com
www.akzdz.com
www.aoxna.com
www.gkzux.com
www.cxgzn.com
www.uedxr.com
www.tmyqy.com
时间: 2024-11-09 02:19:29

小时代5-perl哈希hash的用法介绍的相关文章

Perl哈希%hash

哈希是 key/value 键/值对的集合. Perl中哈希变量以百分号 (%) 标记开始. 访问哈希元素格式:${key}. 以下是一个简单的哈希实例: 实例 #!/usr/bin/perl %data = ('google', 'google.com', 'runoob', 'runoob.com', 'taobao', 'taobao.com'); print "\$data{'google'} = $data{'google'}\n"; print "\$data{'

大话Java中的哈希(hash)结构(一)

o( ̄▽ ̄)d 小伙伴们在上网或者搞程序设计的时候,总是会听到关于“哈希(hash)”的一些东西.比如哈希算法.哈希表等等的名词,那么什么是hash呢? 一.相关概念 1.hash算法:一类特殊的算法(注意哦,hash算法并不是某个固定的算法,而是一类特殊功能算法的统称). 2.哈希表(hash table).哈希映射(hash map).哈希集合(hash set):一种基于hash算法的数据结构. 3.哈希函数:在hash算法中的核心函数. 4.map:译为“映射”,是一种从键(key)到值

Perl 哈希、数组 排序

写在前面: 1. 注意use warnings; 后,定义变量前加my 2. 此文转载其他文章,代码修改,适合新版本perl (一) sort函数sort LISTsort BLOCK LISTsort SUBNAME LISTsort的用法有如上3种形式.它对LIST进行排序,并返回排序后的列表.假如忽略了SUBNAME或BLOCK,sort按标准字串比较顺序来进行(例如ASCII顺序).如果指定了SUBNAME,它实际上是个子函数的名字,该子函数对比2个列表元素,并返回一个小于,等于,或大于

Perl Learning 5 Hash

[本文原创,未经允许请勿转载] 哈希是一种数据结构,它和数组的相似之处在于可以容纳任意多的值并能按需取用,而它和数组的不同在于索引方式,数组是以数字来索引,哈希则以名字来索引.也就是说,哈希的索引值,此处称为键(key),并不是数字,而是任意唯一的字符串.但它也必须是唯一的字符串. 我们也可以这么看待哈希,试将它想象成一大桶数据,其中每个数据都有关联的标签.你可以伸手到桶里任意取出一张标签,看它上面附着的数据是什么.但是桶里没有所谓的"第一个"元素,只有一堆数据.是键-值对的集合. 要

NSDictionary实现原理-ios哈希hash和isEqual

NSDictionary实现原理-ios哈希hash和isEqual OC中自定义类的NSCopying实现的注意事项(isEqual & hash实现) http://blog.csdn.net/linshaolie/article/details/41494303 iOS开发 之 不要告诉我你真的懂isEqual与hash! http://m.blog.csdn.net/hx_lei/article/details/53885798 http://www.jianshu.com/p/9153

[2014][中国][小时代3:刺金时代][DVD/1080P/迅雷BT电影下载]

导演: 郭敬明 编剧: 郭敬明 主演: 杨幂 / 柯震东 / 郭采洁 / 陈学冬 / 郭碧婷 / 谢依霖 / 李贤宰 / 锦荣 / 任言恺 / 王琳 / 姜潮 / 商侃 / 杜天皓 类型: 剧情 / 爱情 制片国家/地区: 中国大陆 语言: 汉语普通话 / 英语 上映日期: 2014-07-17(中国大陆) 片长: 126分钟 又名: 小时代3 / Tiny Time 3 剧情简介 林萧(杨幂 饰).顾里(郭采洁 饰).南湘(郭碧婷 饰).唐宛如(谢依霖 饰)四个从小一起长大的好姐妹大学毕业进入

perl 函数返回hash引用

perl 函数返回hash引用 my %h=%{foo()} #接收hash sub foo{ my %fh; $fh{a}=1; return \%fh;      #返回hash引用 } grep?? 在hash中,当检验一个元素值是否被定义是用defined,当检验一个key在hash中是否存在时,用exists. if(defined $hash{$key}){...} if(exists $hash{$key}){...} 正则匹配时,=~之间不能有空格!!! 一个句柄可以多次使用,但

《后会无期》票房赶超《小时代3》 大数据解读韩寒VS四娘之争

7月25日,韩寒导演的处女作<后会无期>零点首映,而郭四娘导演的<小时代3:刺金时代>比<后会无期>早上映一周,也就是7月17日正式公映,韩寒与四娘之间向来不缺乏话题和粉丝关注,此次电影也排在同一档期,更加引得了两方阵营粉丝们及媒体们的热切关注和讨论.比较再所难免,双方就各自的公众魅力.话题影响力.影片口碑.票房数据等展开了全方位厮杀,下面我们就从一些数据中来窥探下,韩寒VS四娘票房之争,谁会笑到最后. 1.  国丈VS四娘 公众魅力不分高下 韩寒与四娘的渊源由来已久,

“小时代”柯振东、成龙儿子房祖名吸毒被捕

继张国立儿子张默,著名编剧宁财神.知名演员高虎吸毒被抓后.前几天被爆出"小时代"主演.新生代偶像柯振东,成龙儿子房祖名涉嫌吸毒被抓的消息出现在各大娱乐版头条,北京警方今日发布消息证实了这一事实. 在柯振东.房祖名又为吸毒明星单上添上浓重的一笔后,我们不禁要深思一下,为什么越来越多的明星.星二代会走上吸毒的道路? 我认为很重要的原因就是不差钱,寻求刺激.明星算是高收入者了,特别是有名的.他们在物质享受上到了一定程度后,就会寻求新的刺激,有的嫖娼,比如黄海波,更多的就是把眼光放在了毒品这种