[Ruby]ハッシュ(Hash)を逆順でループするには?

Ruby

どうも、ちょげ(@chogetarou)です。

ハッシュ(Hash)を逆順でループする方法を紹介します。

スポンサーリンク

方法

ハッシュ(Hash)を逆順でループするには、reverse_eachメソッドを使います。

まず、ハッシュからreverse_eachメソッドを呼び出します。

reverse_eachメソッドのブロックには、2つの引数を用意します。

そして、reverse_eachメソッドのブロックにループ処理を指定します。

ループ処理では、第1引数でキー、第2引数で値を取得します。

#hash=対象のハッシュ
hash.reverse_each do |key, value|
    #ループ処理
    #keyでキー、valueで値を取得
end

上記のreverse_eachメソッドは、ハッシュ(Hash)を逆順でループします。

使用例

nums = { 
    :one => 1, 
    :two => 2,
    :three => 3,
    :four => 4,
    :five => 5,
}

nums.reverse_each do |key, value|
    p "#{key}=#{value}"
end
出力:
"five=5"
"four=4"
"three=3"
"two=2"
"one=1"

コメント

タイトルとURLをコピーしました