0

ハッシュ構造が次のような場合、石の値を取得するにはどうすればよいですか?

%HoA = 
(
[stones    => "ruby"],
[metal     => "gold"],
);

「print $HoA->{stones};」を使用して取得しようとしていますが、値が返されません。

4

1 に答える 1

1

問題は、のメンバーが%HoAハッシュではなく配列であることです。実際、あなたが持っているのは、1 つの要素を持つハッシュです。その要素のキーは、「stones」と「ruby」の 2 つの要素を保持する配列への参照です。その要素の値は、「金属」と「金」の 2 つの要素を保持する配列への参照です。

石のリスト、金属のリストなどを含むハッシュが必要だと思います。その方法は次のとおりです。

%HoA = 
(
    stones    => ["ruby"],
    metal     => ["gold"],
);

$HoA{stones} は、単一の要素「ruby」を含む配列への参照です。

print @($HoA{stones});

あなたに与えるべきです:

ruby
于 2013-07-24T10:12:40.923 に答える