0

次のコードがあります。

def operation hash
  puts hash[:three][:three][:three]
end

operation :one => 'item', :two => [1,2,3], :three => [
    :one => 1,
    :two => 2,
    :three => [
        :one => 1,
        :two => 2,
        :three => [
            :test1,
            :test2
        ]
    ]
]

項目 hash[:three][:three][:three] にアクセスして [test1, test2] を出力したいと思います。
うまくいかないのはなぜですか?

4

2 に答える 2

1

Aは、配列用に予約されているブラケットではなくHash、ブレースで囲む必要があります。{}[]

PHP とは異なり、Ruby ではこれらは別個の型です。

于 2013-03-03T19:27:00.783 に答える
0

これを試して:

 def operation hash
  puts hash[:three][0][:three][0][:three]  #=> [:test1, :test2]
end

:three各キーには、値を格納する配列があることに注意してください。

于 2013-03-03T19:26:49.907 に答える