Perl 遍歷雜湊

2021-04-23 20:37:23 字數 1216 閱讀 7026

我們在遍歷二維或多維的雜湊時, 可以採用遞迴的方法.

1. 首先檢視每個value的值型別, 如hash, array, 還是簡單的標量

2. 如果value的值型別是hash,則遞迴直到找到相應的array 或者標量

3. 如果value的值型別是array,則通過迴圈列印出各個元素

4. 如果value的值型別是標量,則直接列印

my %kids_of_wife;

$kids_of_wife = ;

my @array = (1,2,3,4,5);

@} = @array;

$kids_of_wife = ;

my %a;

$a=1;

$a=5;

$a=2;

$a=1;

$a=8;

printhash(/%a, "");

printhash(/%kids_of_wife, $keyword);

sub printhash

elsif ($value =~ /^array/)

;print "$keyword$key => ";

foreach (@array)

}else

print "/n";}}

}result:

m1::n => 1

m1::q => 8

m::n => 1

m::n2 => 5

m::n3 => 2

jacob1::john1::rachel1 => joseph1  benjamin1

jacob1::john1::leah1 => reuben1  simeon1  levi1  judah1  issachar1  zebulun1

jacob1::john1::zilpah1 => gad1  asher1

jacob1::john1::bilhah1 => dan1  naphtali1

jacob::john::zilpah => gad  asher

jacob::john::bilhah => dan  naphtali

jacob::john::leah => reuben  simeon  levi  judah  issachar  zebulun

jacob::john::betty => 1  2  3  4  5

jacob::john::rachel => joseph  benjamin

Perl筆記 05 雜湊

雜湊是一種資料結構,和陣列相比 相同在於 可以容納很多值 沒有上限 並能隨機訪問。區別在於 不像陣列是以數字來檢索,雜湊是以名字來檢索。也就是說檢索用的鍵不是數字,而是保證唯一的字串 所謂鍵其實就是字串,所以我們不必用數字3來獲取陣列元素,而是用vilma這個名字來訪問雜湊元素。這些鍵可以是任何字串...

Perl語言入門 雜湊

什麼是雜湊 雜湊是一種資料結構,類似與陣列,不同之處在於雜湊是用字串而非數字來檢索的 為什麼用雜湊 典型的雜湊應用有 按名字找姓 用主機名找ip位址 按ip位址找主機名 按單詞統計出現次數 按身份證號找出姓名等 訪問雜湊元素 語法為 hash 如 family name flintstone 雜湊元...

Perl語言程式設計 雜湊

在學習perl語言的過程中,遇到了乙個別的語言中並不常見的概念 雜湊。雜湊表並不是perl語言特有的資料結構,但是perl語言中的雜湊具有得天獨厚的優勢。雜湊與陣列非常相似,但是也有著非常明顯的不同。在乙個陣列當中,陣列的每乙個元素包含乙個值,同時每乙個元素都有它對應的下標。簡單些說,就是陣列是 值...