Ruby 2.3.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Hashクラス > fetch_values

instance method Hash#fetch_values

fetch_values(key, ...) -> [object][permalink][rdoc]
fetch_values(key, ...) { |key| ... } -> [object]

引数で指定されたキーに関連づけられた値の配列を返します。

該当するキーが登録されていない時には、ブロックが与えられていればそのブ ロックを評価した値を返します。ブロックが与えられていない時は KeyError が発生します。

self にデフォルト値が設定されていても無視されます(挙動に変化がありません)。

[PARAM] key:
探索するキーを任意個指定します。
[EXCEPTION] KeyError:
ブロックが与えられてない時にキーの探索に失敗すると発生します。
h = { "cat" => "feline", "dog" => "canine", "cow" => "bovine" }

h.fetch_values("cow", "cat")                   # => ["bovine", "feline"]
h.fetch_values("cow", "bird")                  # raises KeyError
h.fetch_values("cow", "bird") { |k| k.upcase } # => ["bovine", "BIRD"]

[SEE_ALSO] Hash#values_at, Hash#fetch