0
如果散列結構如下所示,我將如何獲得寶石的價值?如何在perl中打印匿名散列的散列?
%HoA =
(
[stones => "ruby"],
[metal => "gold"],
);
我想使用「print $ HoA - > {stones};」,但沒有返回值。
如果散列結構如下所示,我將如何獲得寶石的價值?如何在perl中打印匿名散列的散列?
%HoA =
(
[stones => "ruby"],
[metal => "gold"],
);
我想使用「print $ HoA - > {stones};」,但沒有返回值。
問題是%HoA
的成員是數組,而不是哈希。事實上,你擁有的是一個元素的散列。該元素的關鍵是引用一個數組,其中包含兩個元素:「寶石」和「紅寶石」。該元素的值是對包含兩個元素的數組的引用:「metal」和「gold」。
我猜你想要一個散列將包含石頭的列表,金屬的名單等,以做到這一點的方法是:
%HoA =
(
stones => ["ruby"],
metal => ["gold"],
);
現在$ {家鄉地址石頭}是一個參考包含單個元素「ruby」的數組。
print @($HoA{stones});
應該給你:
ruby