濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > perl哈希hash的常見用法介紹

perl哈希hash的常見用法介紹

熱門標(biāo)簽:浦東上海400開頭的電話申請(qǐng) 買了外呼系統(tǒng)不想用了怎么辦 武漢呼叫中心外呼系統(tǒng)線路商 電話機(jī)器人電話卡封號(hào)怎么辦 邯鄲外呼調(diào)研線路 樂昌電話機(jī)器人 開封百應(yīng)電銷機(jī)器人聯(lián)系方式 真人語音電銷機(jī)器人系統(tǒng) 北京語音電銷機(jī)器人價(jià)格

基本用法

#初始化%h為空數(shù)組 %h={};
#用數(shù)組初始化%h為a=>1,b=>2  %h=('a',1,'b',2);
#意義同上,只是另一種更形象化的寫法。%h=('a'=>1,'b'=>2);
#如果key是字符串,可以省略引號(hào)。下面這行和上面那行是一樣的%h=(a=>1,b=>2);
#用{}來訪問print “$h{a}\n”;
#打印 $h='2b'; print “$h\n”; #打印2b
#刪除key用delete   delete$h;  #從$h刪除'b'

清空Perl Hash
undef %h;

得到hash的所有鍵值
#得到所有keys,順序取決于hash函數(shù),或者說是亂序@all_keys=keys%h;  #所有鍵值,是按hash的值從大往小排列的。值的比較是數(shù)字比較(比如說,10>9) ,  @all_keys=sort{$h{$b} => $h{$a}}(keys%h);

判斷Perl Hash是否包含key
 exists($h{$key});

Perl Hash的長(zhǎng)度
想要知道一個(gè)hash存放多少數(shù)據(jù)
$hash_size=keys%h #把%h的長(zhǎng)度放到$hash_size中print scalar keys %h,"\n"; #打印%h的長(zhǎng)度。這里用了scalar來返回?cái)?shù)組長(zhǎng)度。

遍歷一個(gè)Perl Hash
while(my($k,$v)=each%h){printquot;$k--->$v\nquot;;}

Reference引用
Reference類似于C/C++的指針
$h_ref=\%h;    #獲得一個(gè)hash的reference,   %aHash=%{$h_ref};   #把hash reference當(dāng)成hash用 $value=$h_ref->{akey}; #這個(gè)和%h{akey}是一樣的

傳遞Perl Hash到函數(shù)
一般都是傳遞一個(gè)reference到函數(shù)
%h=(); $h{a}=1; foo(\%h); print $h,"\n"; #打印出2。這個(gè)值來自于函數(shù)foo(), sub foo{my ($h)=@_; print $h->{a},"\n"; #打印出1 $h->=2;}

函數(shù)返回hash,或者h(yuǎn)ash引用(hashreference)
函數(shù)可以返回Perl Hash
sub foo{my %fh; $fh{a}=1; return %h;} my %h=foo(); print "$h{a}\n"; #打印出1
但是這樣等于把整個(gè)hash從%fh復(fù)制到了%h,效率比較低??梢钥紤]返回hash的引用:
sub foo{my %fh; $fh{a}=1; return \%fh;} my $hr=foo(); print "$hr->{a}\n"; #打印出1.  my %h=%{foo()} #如果就是想復(fù)制,也可以用這種方法。不用擔(dān)心在sub foo里的%fh是局部變量,Perl會(huì)自動(dòng)管理內(nèi)存。它會(huì)發(fā)現(xiàn)%fh被$hr引用,就不會(huì)清理%fh的內(nèi)存,并且$hr失效后釋放內(nèi)存。

您可能感興趣的文章:
  • php-perl哈希算法實(shí)現(xiàn)(times33哈希算法)
  • Perl 哈希的創(chuàng)建和引用介紹
  • Perl哈希表用法解析
  • perl哈希的一個(gè)實(shí)例分析
  • Perl 哈希Hash用法之入門教程
  • Perl與JS的對(duì)比分析(數(shù)組、哈希)

標(biāo)簽:松原 鄂州 自貢 六安 河北 淄博 宜春 石嘴山

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《perl哈希hash的常見用法介紹》,本文關(guān)鍵詞  perl,哈希,hash,的,常見,用法,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《perl哈希hash的常見用法介紹》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于perl哈希hash的常見用法介紹的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    新郑市| 阿坝| 政和县| 阳泉市| 炎陵县| 德安县| 丰镇市| 北流市| 中江县| 营口市| 忻城县| 砀山县| 方城县| 永善县| 普兰店市| 务川| 山西省| 连云港市| 青州市| 秭归县| 星子县| 池州市| 建阳市| 罗源县| 沙河市| 青田县| 丰台区| 斗六市| 湛江市| 桦川县| 衡水市| 盈江县| 龙州县| 荃湾区| 松溪县| 靖边县| 迁西县| 拜城县| 阿荣旗| 珲春市| 阿拉善右旗|