小编She*_*aph的帖子

检查数据结构并忽略散列或数组

我在一个数组中有一堆哈希。检查我的键和值时,我得到了预期的输出,除了一些特殊情况,因为它们引用了更多的数组/哈希。

想想这样的事情:

@AoH = ( { 'husband' => "homer", 'wife' => "marge" },
         { 'people' => [{'Bob'=> 24, 'Lukas'=> 37}] },
         { 'vegetables' => { 'tomato' => "red", 'carrot' => "orange"} }); 
Run Code Online (Sandbox Code Playgroud)

我的函数遍历数组并显示我的键和值,如下所示:

 sub function(...){    
    print "$key => $value\n";
 }

husband => homer
wife => marge
people => ARRAY(0x6b0d80)
Bob => 24
Lukas => 37
vegetables => HASH(0x2570d38)
tomato => red
carrot => orange
Run Code Online (Sandbox Code Playgroud)

现在我想访问我的键和值,但是当将诸如 ARRAY 或 HASH 之类的东西作为值时,我想忽略该散列而不是打印它。

是否有某种方法只能访问类型标量的值?

到目前为止,我试过这个:

if ($value eq 'ARRAY') {
}
elsif ($value eq …
Run Code Online (Sandbox Code Playgroud)

arrays perl scalar hashmap data-structures

2
推荐指数
1
解决办法
75
查看次数

标签 统计

arrays ×1

data-structures ×1

hashmap ×1

perl ×1

scalar ×1