るりまサーチ (Ruby 3.0)

最速Rubyリファレンスマニュアル検索!
77件ヒット [1-77件を表示] (0.073秒)

別のキーワード

  1. rake sh
  2. fileutils sh
  3. constants lock_sh
  4. _builtin lock_sh
  5. sync sh

ライブラリ

クラス

モジュール

キーワード

検索結果

Hash#key(val) -> object (63361.0)

値 val に対応するキーを返します。対応する要素が存在しない時には nil を返します。

値 val に対応するキーを返します。対応する要素が存在しない時には
nil を返します。

該当するキーが複数存在する場合、どのキーを返すかは不定です。


@param val 探索に用いる値を指定します。

//emlist[例][ruby]{
h = {:ab => "some" , :cd => "all" , :ef => "all"}

p h.key("some") #=> :ab
p h.key("all") #=> :cd
p h.key("at") #=> nil
//}

@see Hash#invert

Hash#transform_keys {|key| ... } -> Hash (27907.0)

すべてのキーに対してブロックを呼び出した結果で置き換えたハッシュを返します。 値は変化しません。

すべてのキーに対してブロックを呼び出した結果で置き換えたハッシュを返します。
値は変化しません。


//emlist[例][ruby]{
h = { a: 1, b: 2, c: 3 }
h.transform_keys {|k| k.to_s } # => {"a"=>1, "b"=>2, "c"=>3}
h.transform_keys(&:to_s) # => {"a"=>1, "b"=>2, "c"=>3}
h.transform_keys.with_index {|k, i| "#{k}.#{i}" }
...

Hash#has_key?(key) -> bool (27724.0)

ハッシュが key をキーとして持つ時真を返します。

ハッシュが key をキーとして持つ時真を返します。

@param key 探索するキーを指定します。

//emlist[][ruby]{
p({1 => "one"}.key?(1)) # => true
p({1 => "one"}.key?(2)) # => false
//}

@see Hash#value?

Hash#key?(key) -> bool (27724.0)

ハッシュが key をキーとして持つ時真を返します。

ハッシュが key をキーとして持つ時真を返します。

@param key 探索するキーを指定します。

//emlist[][ruby]{
p({1 => "one"}.key?(1)) # => true
p({1 => "one"}.key?(2)) # => false
//}

@see Hash#value?

Hash#each_key {|key| ... } -> self (27667.0)

ハッシュのキーを引数としてブロックを評価します。

ハッシュのキーを引数としてブロックを評価します。

反復の際の評価順序はキーが追加された順です。
ブロック付きの場合selfを、
無しで呼ばれた場合Enumeratorを返します。

//emlist[例][ruby]{
{:a=>1, :b=>2}.each_key {|k| p k}
#=> :a
# :b

p({:a=>1, :b=>2}.each_key) # => #<Enumerator: {:a=>1, :b=>2}:each_key>
//}

@see Hash#each_pair,Hash#each_value

絞り込み条件を変える

Hash#transform_keys! {|key| ... } -> self (27607.0)

すべてのキーに対してブロックを呼び出した結果でハッシュのキーを変更します。 値は変化しません。

すべてのキーに対してブロックを呼び出した結果でハッシュのキーを変更します。
値は変化しません。

@return transform_keys! は常に self を返します。
ブロックが与えられなかった場合は、Enumerator オブジェクトを
返します。


//emlist[例][ruby]{
h = { a: 1, b: 2, c: 3 }
h.transform_keys! {|k| k.to_s } # => {"a"=>1, "b"=>2, "c"=>3}
h.transform_keys!(&:to_sym) # => {:a...

Hash#shift -> [object, object] | nil (27370.0)

ハッシュからキーが追加された順で先頭の要素をひとつ取り除き、 [key, value]という配列として返します。

ハッシュからキーが追加された順で先頭の要素をひとつ取り除き、
[key, value]という配列として返します。

shiftは破壊的メソッドです。selfは要素を取り除かれた残りのハッシュに変更されます。

Ruby 3.2以前は、ハッシュが空の場合、デフォルト値(Hash#defaultまたはHash#default_procのブロックの値か、どちらもnilならばnil)
を返します(このとき、[key,value] という形式の値を返すわけではないことに注意)。

3.2以降ではデフォルト値に関わらず nil を返すよう変更されています。

//emlist[例][ruby]{
h =...

Hash#each_key -> Enumerator (27367.0)

ハッシュのキーを引数としてブロックを評価します。

ハッシュのキーを引数としてブロックを評価します。

反復の際の評価順序はキーが追加された順です。
ブロック付きの場合selfを、
無しで呼ばれた場合Enumeratorを返します。

//emlist[例][ruby]{
{:a=>1, :b=>2}.each_key {|k| p k}
#=> :a
# :b

p({:a=>1, :b=>2}.each_key) # => #<Enumerator: {:a=>1, :b=>2}:each_key>
//}

@see Hash#each_pair,Hash#each_value

Hash#transform_keys -> Enumerator (27307.0)

すべてのキーに対してブロックを呼び出した結果で置き換えたハッシュを返します。 値は変化しません。

すべてのキーに対してブロックを呼び出した結果で置き換えたハッシュを返します。
値は変化しません。


//emlist[例][ruby]{
h = { a: 1, b: 2, c: 3 }
h.transform_keys {|k| k.to_s } # => {"a"=>1, "b"=>2, "c"=>3}
h.transform_keys(&:to_s) # => {"a"=>1, "b"=>2, "c"=>3}
h.transform_keys.with_index {|k, i| "#{k}.#{i}" }
...

Hash#transform_keys! -> Enumerator (27307.0)

すべてのキーに対してブロックを呼び出した結果でハッシュのキーを変更します。 値は変化しません。

すべてのキーに対してブロックを呼び出した結果でハッシュのキーを変更します。
値は変化しません。

@return transform_keys! は常に self を返します。
ブロックが与えられなかった場合は、Enumerator オブジェクトを
返します。


//emlist[例][ruby]{
h = { a: 1, b: 2, c: 3 }
h.transform_keys! {|k| k.to_s } # => {"a"=>1, "b"=>2, "c"=>3}
h.transform_keys!(&:to_sym) # => {:a...

絞り込み条件を変える

Hash#keys -> [object] (27304.0)

全キーの配列を返します。

全キーの配列を返します。

//emlist[例][ruby]{
h1 = { "a" => 100, 2 => ["some"], :c => "c" }
p h1.keys #=> ["a", 2, :c]
//}

@see Hash#values,Hash#to_a

Struct#deconstruct_keys(array_of_names) -> Hash (18604.0)

self のメンバの名前と値の組を Hash で返します。

self のメンバの名前と値の組を Hash で返します。

@param array_of_names 返り値に含めるメンバの名前の配列を指定します。nil の場合は全てのメンバを意味します。

//emlist[例][ruby]{
Customer = Struct.new(:name, :address, :zip)
joe = Customer.new("Joe Smith", "123 Maple, Anytown NC", 12345)
h = joe.deconstruct_keys([:zip, :address])
h # => {:zip=>12345, :address...

Hash#include?(key) -> bool (18424.0)

ハッシュが key をキーとして持つ時真を返します。

ハッシュが key をキーとして持つ時真を返します。

@param key 探索するキーを指定します。

//emlist[][ruby]{
p({1 => "one"}.key?(1)) # => true
p({1 => "one"}.key?(2)) # => false
//}

@see Hash#value?

Hash#member?(key) -> bool (18424.0)

ハッシュが key をキーとして持つ時真を返します。

ハッシュが key をキーとして持つ時真を返します。

@param key 探索するキーを指定します。

//emlist[][ruby]{
p({1 => "one"}.key?(1)) # => true
p({1 => "one"}.key?(2)) # => false
//}

@see Hash#value?

Hash#fetch(key) {|key| ... } -> object (9790.0)

key に関連づけられた値を返します。該当するキーが登録されてい ない時には、引数 default が与えられていればその値を、ブロッ クが与えられていればそのブロックを評価した値を返します。

key に関連づけられた値を返します。該当するキーが登録されてい
ない時には、引数 default が与えられていればその値を、ブロッ
クが与えられていればそのブロックを評価した値を返します。

fetchはハッシュ自身にデフォルト値が設定されていても単に無視します(挙動に変化がありません)。

@param key 探索するキーを指定します。
@param default 該当するキーが登録されていない時の返り値を指定します。
@raise KeyError 引数defaultもブロックも与えられてない時、キーの探索に失敗すると発生します。

//emlist[例][ruby]{
h...

絞り込み条件を変える

Hash#delete(key) {|key| ... } -> object (9751.0)

key に対応する要素を取り除きます。

key に対応する要素を取り除きます。

@param key 取り除くキーを指定します。

@return 取り除かれた要素の値を返します。
key に対応する要素が存在しない時には nil を返します。

与えられたブロックは key にマッチする要素がなかった時に評価され、その結果を返します。

//emlist[例][ruby]{
h = {:ab => "some" , :cd => "all"}

p h.delete(:ab) #=> "some"
p h.delete(:ef) #=> nil
p h.delete(:ef){|key|"#{k...

Hash#merge(*others) {|key, self_val, other_val| ... } -> Hash (9661.0)

selfとothersのハッシュの内容を順番にマージ(統合)した結果を返します。 デフォルト値はselfの設定のままです。

selfとothersのハッシュの内容を順番にマージ(統合)した結果を返します。
デフォルト値はselfの設定のままです。

self と others に同じキーがあった場合はブロック付きか否かで
判定方法が違います。ブロック付きのときはブロックを呼び出して
その返す値を重複キーに対応する値にします。ブロック付きでない
場合は常に others の値を使います。

othersがハッシュではない場合、othersのメソッドto_hashを使って暗黙の変換を試みます。

@param others マージ用のハッシュまたはメソッド to_hash でハッシュに変換できるオブジェクトです。
@...

Hash#filter {|key, value| ... } -> Hash (9658.0)

key, value のペアについてブロックを評価し,真となるペアだけを含む ハッシュを生成して返します。

key, value のペアについてブロックを評価し,真となるペアだけを含む
ハッシュを生成して返します。

ブロックが与えられなかった場合は、自身と select から生成した
Enumerator オブジェクトを返します。

//emlist[][ruby]{
h = { "a" => 100, "b" => 200, "c" => 300 }
h.select {|k,v| k > "a"} #=> {"b" => 200, "c" => 300}
h.select {|k,v| v < 200} #=> {"a" => 100}
//}


@see Hash#select!, ...

Hash#select {|key, value| ... } -> Hash (9658.0)

key, value のペアについてブロックを評価し,真となるペアだけを含む ハッシュを生成して返します。

key, value のペアについてブロックを評価し,真となるペアだけを含む
ハッシュを生成して返します。

ブロックが与えられなかった場合は、自身と select から生成した
Enumerator オブジェクトを返します。

//emlist[][ruby]{
h = { "a" => 100, "b" => 200, "c" => 300 }
h.select {|k,v| k > "a"} #=> {"b" => 200, "c" => 300}
h.select {|k,v| v < 200} #=> {"a" => 100}
//}


@see Hash#select!, ...

Hash#reject {|key, value| ... } -> Hash (9643.0)

self を複製して、ブロックを評価した値が真になる要 素を削除したハッシュを返します。

self を複製して、ブロックを評価した値が真になる要
素を削除したハッシュを返します。

ハッシュを返すことを除けば
Enumerable#reject とほぼ同じです。
selfを破壊的に変更したい場合はかわりにHash#delete_ifかHash#reject!を使います。

//emlist[例][ruby]{
h = { 2 =>"8" ,4 =>"6" ,6 =>"4" ,8 =>"2" }

p h.reject{|key, value| key.to_i < value.to_i} #=> {6=>"4", 8=>"2"}
//}

@see Hash#delete_if,...

絞り込み条件を変える

Hash#to_h {|key, value| block } -> Hash (9643.0)

self を返します。Hash クラスのサブクラスから呼び出した場合は self を Hash オブジェクトに変換します。

self を返します。Hash クラスのサブクラスから呼び出した場合は
self を Hash オブジェクトに変換します。

//emlist[例][ruby]{
hash = {}
p hash.to_h # => {}
p hash.to_h == hash # => true

class MyHash < Hash;end
my_hash = MyHash.new
p my_hash.to_h # => {}
p my_hash.class # => MyHash
p my_hash.to_h.class # => Hash
//}

ブロックを...

Hash#fetch_values(key, ...) { |key| ... } -> [object] (9631.0)

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

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

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

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

@param key 探索するキーを任意個指定します。

@raise KeyError ブロックが与えられてない時にキーの探索に失敗すると発生します。

//emlist[例][ruby]{
h = { "cat" => "feline", "dog" => "canine", ...

Hash#slice(*keys) -> Hash (9604.0)

引数で指定されたキーとその値だけを含む Hash を返します。

引数で指定されたキーとその値だけを含む Hash を返します。

//emlist[例][ruby]{
h = { a: 100, b: 200, c: 300 }
h.slice(:a) # => {:a=>100}
h.slice(:c, :b) # => {:c=>300, :b=>200}
h.slice(:b, :c, :d) # => {:b=>200, :c=>300}
//}

@see ENV.slice

Hash#fetch(key) -> object (9490.0)

key に関連づけられた値を返します。該当するキーが登録されてい ない時には、引数 default が与えられていればその値を、ブロッ クが与えられていればそのブロックを評価した値を返します。

key に関連づけられた値を返します。該当するキーが登録されてい
ない時には、引数 default が与えられていればその値を、ブロッ
クが与えられていればそのブロックを評価した値を返します。

fetchはハッシュ自身にデフォルト値が設定されていても単に無視します(挙動に変化がありません)。

@param key 探索するキーを指定します。
@param default 該当するキーが登録されていない時の返り値を指定します。
@raise KeyError 引数defaultもブロックも与えられてない時、キーの探索に失敗すると発生します。

//emlist[例][ruby]{
h...

Hash#fetch(key, default) -> object (9490.0)

key に関連づけられた値を返します。該当するキーが登録されてい ない時には、引数 default が与えられていればその値を、ブロッ クが与えられていればそのブロックを評価した値を返します。

key に関連づけられた値を返します。該当するキーが登録されてい
ない時には、引数 default が与えられていればその値を、ブロッ
クが与えられていればそのブロックを評価した値を返します。

fetchはハッシュ自身にデフォルト値が設定されていても単に無視します(挙動に変化がありません)。

@param key 探索するキーを指定します。
@param default 該当するキーが登録されていない時の返り値を指定します。
@raise KeyError 引数defaultもブロックも与えられてない時、キーの探索に失敗すると発生します。

//emlist[例][ruby]{
h...

絞り込み条件を変える

Hash#delete(key) -> object | nil (9451.0)

key に対応する要素を取り除きます。

key に対応する要素を取り除きます。

@param key 取り除くキーを指定します。

@return 取り除かれた要素の値を返します。
key に対応する要素が存在しない時には nil を返します。

与えられたブロックは key にマッチする要素がなかった時に評価され、その結果を返します。

//emlist[例][ruby]{
h = {:ab => "some" , :cd => "all"}

p h.delete(:ab) #=> "some"
p h.delete(:ef) #=> nil
p h.delete(:ef){|key|"#{k...

Hash#delete_if {|key, value| ... } -> self (9418.0)

キーと値を引数としてブロックを評価した結果が真であ るような要素を self から削除します。

キーと値を引数としてブロックを評価した結果が真であ
るような要素を self から削除します。

delete_if は常に self を返します。
reject! は、要素を削除しなかった場合には nil を返し、
そうでなければ self を返します。

ブロックを省略した場合は Enumerator を返します。

//emlist[例][ruby]{
h = { 2 => "8" ,4 => "6" ,6 => "4" ,8 => "2" }

p h.reject!{|key, value| key.to_i < value.to_i } #=> { 6 => "4", 8 =...

Hash#reject! {|key, value| ... } -> self|nil (9418.0)

キーと値を引数としてブロックを評価した結果が真であ るような要素を self から削除します。

キーと値を引数としてブロックを評価した結果が真であ
るような要素を self から削除します。

delete_if は常に self を返します。
reject! は、要素を削除しなかった場合には nil を返し、
そうでなければ self を返します。

ブロックを省略した場合は Enumerator を返します。

//emlist[例][ruby]{
h = { 2 => "8" ,4 => "6" ,6 => "4" ,8 => "2" }

p h.reject!{|key, value| key.to_i < value.to_i } #=> { 6 => "4", 8 =...

Hash#[]=(key, value) (9412.0)

key に対して value を関連づけます。value を返し ます。

key に対して value を関連づけます。value を返し
ます。

@param key キーを指定します。
@param value 値を指定します。


//emlist[例][ruby]{
h = {}

h[:key] = "value"
p h #=>{:key => "value"}
//}

@see Hash#[]

Hash#store(key, value) -> object (9412.0)

key に対して value を関連づけます。value を返し ます。

key に対して value を関連づけます。value を返し
ます。

@param key キーを指定します。
@param value 値を指定します。


//emlist[例][ruby]{
h = {}

h[:key] = "value"
p h #=>{:key => "value"}
//}

@see Hash#[]

絞り込み条件を変える

Hash#[](key) -> object | nil (9409.0)

key に関連づけられた値を返します。

key に関連づけられた値を返します。

該当するキーが登録されていない時には、デフォルト値を返します。

デフォルト値と値としての nil を区別する必要が
ある場合は Hash#fetch または Hash#key? を使ってください。

@param key 探索するキーを指定します。

//emlist[例][ruby]{
h = {:ab => "some" , :cd => "all"}
p h[:ab] #=> "some"
p h[:ef] #=> nil

h1 = Hash.new("default value")
p h1[...

Hash#assoc(key) -> Array | nil (9391.0)

ハッシュが key をキーとして持つとき、見つかった要素のキーと値のペア を配列として返します。

ハッシュが key をキーとして持つとき、見つかった要素のキーと値のペア
を配列として返します。

キーの同一性判定には eql? メソッドではなく == メソッドを使います。
key が見つからなかった場合は、nil を返します。

@param key 検索するキー

//emlist[例][ruby]{
h = {"colors" => ["red", "blue", "green"],
"letters" => ["a", "b", "c" ]}
h.assoc("letters") #=> ["letters", ["a", "b", "c"]]
h.assoc("f...

Hash#default(key) -> object | nil (9379.0)

ハッシュのデフォルト値を返します。

ハッシュのデフォルト値を返します。

ハッシュのデフォルト値がブロックで与えられている場合、 1 番目の形式だと
返り値が nil になることに注意してください。この場合、ハッシュのデフォルト値に
ついて調べるには 2 番目の形式か Hash#default_proc を使ってください。

2 番目の形式はハッシュがデフォルト値としてブロックを持つ場合に、
self と引数 key をブロックに渡して評価し、その結果を返します。

@param key デフォルトのブロックにキーとして渡されます。

//emlist[例][ruby]{
h = Hash.new("default")
p h....

Hash#invert -> Hash (9376.0)

値からキーへのハッシュを作成して返します。

値からキーへのハッシュを作成して返します。

異なるキーに対して等しい値が登録されている場合、最後に定義されている値が使用されます。

//emlist[例][ruby]{
h = { "a" => 0, "b" => 100, "c" => 200, "d" => 300, "e" => 300 }
p h.invert #=> {0=>"a", 100=>"b", 200=>"c", 300=>"e"}
//}

=== 参考
値が重複していたときに備えて、変換後の値を配列として保持するには、次のようにします。

//emlist[][ruby]{
def safe_invert(o...

Hash#merge(*others) -> Hash (9361.0)

selfとothersのハッシュの内容を順番にマージ(統合)した結果を返します。 デフォルト値はselfの設定のままです。

selfとothersのハッシュの内容を順番にマージ(統合)した結果を返します。
デフォルト値はselfの設定のままです。

self と others に同じキーがあった場合はブロック付きか否かで
判定方法が違います。ブロック付きのときはブロックを呼び出して
その返す値を重複キーに対応する値にします。ブロック付きでない
場合は常に others の値を使います。

othersがハッシュではない場合、othersのメソッドto_hashを使って暗黙の変換を試みます。

@param others マージ用のハッシュまたはメソッド to_hash でハッシュに変換できるオブジェクトです。
@...

絞り込み条件を変える

Hash#merge!(*others) {|key, self_val, other_val| ... } -> self (9346.0)

selfとothersのハッシュの内容を順番にマージ(統合)します。

selfとothersのハッシュの内容を順番にマージ(統合)します。

デフォルト値はselfの設定のままです。

self と others に同じキーがあった場合はブロック付きか否かで
判定方法が違います。ブロック付きのときはブロックを呼び出して
その返す値を重複キーに対応する値にします。ブロック付きでない
場合は常に others の値を使います。

othersがハッシュではない場合、othersのメソッドto_hashを使って暗黙の変換を試みます。

@param others マージ用のハッシュまたはメソッド to_hash でハッシュに変換できるオブジェクトです。
@retur...

Hash#update(*others) {|key, self_val, other_val| ... } -> self (9346.0)

selfとothersのハッシュの内容を順番にマージ(統合)します。

selfとothersのハッシュの内容を順番にマージ(統合)します。

デフォルト値はselfの設定のままです。

self と others に同じキーがあった場合はブロック付きか否かで
判定方法が違います。ブロック付きのときはブロックを呼び出して
その返す値を重複キーに対応する値にします。ブロック付きでない
場合は常に others の値を使います。

othersがハッシュではない場合、othersのメソッドto_hashを使って暗黙の変換を試みます。

@param others マージ用のハッシュまたはメソッド to_hash でハッシュに変換できるオブジェクトです。
@retur...

Hash#to_h -> self | Hash (9343.0)

self を返します。Hash クラスのサブクラスから呼び出した場合は self を Hash オブジェクトに変換します。

self を返します。Hash クラスのサブクラスから呼び出した場合は
self を Hash オブジェクトに変換します。

//emlist[例][ruby]{
hash = {}
p hash.to_h # => {}
p hash.to_h == hash # => true

class MyHash < Hash;end
my_hash = MyHash.new
p my_hash.to_h # => {}
p my_hash.class # => MyHash
p my_hash.to_h.class # => Hash
//}

ブロックを...

Hash#fetch_values(key, ...) -> [object] (9331.0)

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

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

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

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

@param key 探索するキーを任意個指定します。

@raise KeyError ブロックが与えられてない時にキーの探索に失敗すると発生します。

//emlist[例][ruby]{
h = { "cat" => "feline", "dog" => "canine", ...

Hash#each {|key, value| ... } -> self (9328.0)

ハッシュのキーと値を引数としてブロックを評価します。

ハッシュのキーと値を引数としてブロックを評価します。

反復の際の評価順序はキーが追加された順です。
ブロック付きの場合 self を、
無しで呼ばれた場合 Enumerator を返します。

each_pair は each のエイリアスです。

//emlist[例][ruby]{
{:a=>1, :b=>2}.each {|a| p a}
#=> [:a, 1]
# [:b, 2]

{:a=>1, :b=>2}.each {|k, v| p [k, v]}
#=> [:a, 1]
# [:b, 2]

p({:a=>1, :b=>2}.each_pair) # => #<...

絞り込み条件を変える

Hash#each_pair {|key, value| ... } -> self (9328.0)

ハッシュのキーと値を引数としてブロックを評価します。

ハッシュのキーと値を引数としてブロックを評価します。

反復の際の評価順序はキーが追加された順です。
ブロック付きの場合 self を、
無しで呼ばれた場合 Enumerator を返します。

each_pair は each のエイリアスです。

//emlist[例][ruby]{
{:a=>1, :b=>2}.each {|a| p a}
#=> [:a, 1]
# [:b, 2]

{:a=>1, :b=>2}.each {|k, v| p [k, v]}
#=> [:a, 1]
# [:b, 2]

p({:a=>1, :b=>2}.each_pair) # => #<...

Hash#dig(key, ...) -> object | nil (9325.0)

self 以下のネストしたオブジェクトを dig メソッドで再帰的に参照して返し ます。途中のオブジェクトが nil であった場合は nil を返します。

self 以下のネストしたオブジェクトを dig メソッドで再帰的に参照して返し
ます。途中のオブジェクトが nil であった場合は nil を返します。

@param key キーを任意個指定します。

//emlist[例][ruby]{
h = { foo: {bar: {baz: 1}}}

h.dig(:foo, :bar, :baz) # => 1
h.dig(:foo, :zot, :xyz) # => nil

g = { foo: [10, 11, 12] }
g.dig(:foo, 1) # => 11
//}

@see...

Hash#filter! {|key, value| ... } -> self | nil (9313.0)

キーと値を引数としてブロックを評価した結果が真であるような要素を self に残します。

キーと値を引数としてブロックを評価した結果が真であるような要素を self
に残します。

keep_if は常に self を返します。
filter! と select! はオブジェクトが変更された場合に self を、
されていない場合に nil を返します。

ブロックが与えられなかった場合は、自身と keep_if から生成した
Enumerator オブジェクトを返します。

//emlist[例][ruby]{
h1 = {}
c = ("a".."g")
c.each_with_index {|e, i| h1[i] = e }

h2 = h1.dup
h1.select!...

Hash#keep_if {|key, value| ... } -> self (9313.0)

キーと値を引数としてブロックを評価した結果が真であるような要素を self に残します。

キーと値を引数としてブロックを評価した結果が真であるような要素を self
に残します。

keep_if は常に self を返します。
filter! と select! はオブジェクトが変更された場合に self を、
されていない場合に nil を返します。

ブロックが与えられなかった場合は、自身と keep_if から生成した
Enumerator オブジェクトを返します。

//emlist[例][ruby]{
h1 = {}
c = ("a".."g")
c.each_with_index {|e, i| h1[i] = e }

h2 = h1.dup
h1.select!...

Hash#select! {|key, value| ... } -> self | nil (9313.0)

キーと値を引数としてブロックを評価した結果が真であるような要素を self に残します。

キーと値を引数としてブロックを評価した結果が真であるような要素を self
に残します。

keep_if は常に self を返します。
filter! と select! はオブジェクトが変更された場合に self を、
されていない場合に nil を返します。

ブロックが与えられなかった場合は、自身と keep_if から生成した
Enumerator オブジェクトを返します。

//emlist[例][ruby]{
h1 = {}
c = ("a".."g")
c.each_with_index {|e, i| h1[i] = e }

h2 = h1.dup
h1.select!...

絞り込み条件を変える

Hash#values_at(*keys) -> [object] (9304.0)

引数で指定されたキーに対応する値の配列を返します。

引数で指定されたキーに対応する値の配列を返します。

キーに対応する要素がなければデフォルト値が使用されます。

@param keys キーを 0 個以上指定します。

@return 引数で指定されたキーに対応する値の配列を返します。
引数が指定されなかった場合は、空の配列を返します。

//emlist[例][ruby]{
h = {1=>"a", 2=>"b", 3=>"c"}

p h.values_at(1,3,4) #=> ["a", "c", nil]
# [h[1], h[3] ,h[4]] と同じ
//}

@see Hash#...

Hash#delete_if -> Enumerator (9118.0)

キーと値を引数としてブロックを評価した結果が真であ るような要素を self から削除します。

キーと値を引数としてブロックを評価した結果が真であ
るような要素を self から削除します。

delete_if は常に self を返します。
reject! は、要素を削除しなかった場合には nil を返し、
そうでなければ self を返します。

ブロックを省略した場合は Enumerator を返します。

//emlist[例][ruby]{
h = { 2 => "8" ,4 => "6" ,6 => "4" ,8 => "2" }

p h.reject!{|key, value| key.to_i < value.to_i } #=> { 6 => "4", 8 =...

Hash#reject! -> Enumerator (9118.0)

キーと値を引数としてブロックを評価した結果が真であ るような要素を self から削除します。

キーと値を引数としてブロックを評価した結果が真であ
るような要素を self から削除します。

delete_if は常に self を返します。
reject! は、要素を削除しなかった場合には nil を返し、
そうでなければ self を返します。

ブロックを省略した場合は Enumerator を返します。

//emlist[例][ruby]{
h = { 2 => "8" ,4 => "6" ,6 => "4" ,8 => "2" }

p h.reject!{|key, value| key.to_i < value.to_i } #=> { 6 => "4", 8 =...

Hash#default_proc=(pr) (9112.0)

ハッシュのデフォルト値を返す Proc オブジェクトを 変更します。

ハッシュのデフォルト値を返す Proc オブジェクトを
変更します。

以前のデフォルトは値(Hash#default)の場合も
Proc の場合(Hash#default_proc)でも上書きされます。

引数には to_proc で Proc オブジェクトに変換できる
オブジェクトも受け付けます。

nil を指定した場合は現在の Hash#default_proc をクリアします。

@param pr デフォルト値を返す手続きオブジェクト

//emlist[例][ruby]{
h = {}
h.default_proc = proc do |hash, key|
hash[ke...

Hash#default -> object | nil (9079.0)

ハッシュのデフォルト値を返します。

ハッシュのデフォルト値を返します。

ハッシュのデフォルト値がブロックで与えられている場合、 1 番目の形式だと
返り値が nil になることに注意してください。この場合、ハッシュのデフォルト値に
ついて調べるには 2 番目の形式か Hash#default_proc を使ってください。

2 番目の形式はハッシュがデフォルト値としてブロックを持つ場合に、
self と引数 key をブロックに渡して評価し、その結果を返します。

@param key デフォルトのブロックにキーとして渡されます。

//emlist[例][ruby]{
h = Hash.new("default")
p h....

絞り込み条件を変える

Hash#filter -> Enumerator (9058.0)

key, value のペアについてブロックを評価し,真となるペアだけを含む ハッシュを生成して返します。

key, value のペアについてブロックを評価し,真となるペアだけを含む
ハッシュを生成して返します。

ブロックが与えられなかった場合は、自身と select から生成した
Enumerator オブジェクトを返します。

//emlist[][ruby]{
h = { "a" => 100, "b" => 200, "c" => 300 }
h.select {|k,v| k > "a"} #=> {"b" => 200, "c" => 300}
h.select {|k,v| v < 200} #=> {"a" => 100}
//}


@see Hash#select!, ...

Hash#select -> Enumerator (9058.0)

key, value のペアについてブロックを評価し,真となるペアだけを含む ハッシュを生成して返します。

key, value のペアについてブロックを評価し,真となるペアだけを含む
ハッシュを生成して返します。

ブロックが与えられなかった場合は、自身と select から生成した
Enumerator オブジェクトを返します。

//emlist[][ruby]{
h = { "a" => 100, "b" => 200, "c" => 300 }
h.select {|k,v| k > "a"} #=> {"b" => 200, "c" => 300}
h.select {|k,v| v < 200} #=> {"a" => 100}
//}


@see Hash#select!, ...

Hash#merge!(*others) -> self (9046.0)

selfとothersのハッシュの内容を順番にマージ(統合)します。

selfとothersのハッシュの内容を順番にマージ(統合)します。

デフォルト値はselfの設定のままです。

self と others に同じキーがあった場合はブロック付きか否かで
判定方法が違います。ブロック付きのときはブロックを呼び出して
その返す値を重複キーに対応する値にします。ブロック付きでない
場合は常に others の値を使います。

othersがハッシュではない場合、othersのメソッドto_hashを使って暗黙の変換を試みます。

@param others マージ用のハッシュまたはメソッド to_hash でハッシュに変換できるオブジェクトです。
@retur...

Hash#update(*others) -> self (9046.0)

selfとothersのハッシュの内容を順番にマージ(統合)します。

selfとothersのハッシュの内容を順番にマージ(統合)します。

デフォルト値はselfの設定のままです。

self と others に同じキーがあった場合はブロック付きか否かで
判定方法が違います。ブロック付きのときはブロックを呼び出して
その返す値を重複キーに対応する値にします。ブロック付きでない
場合は常に others の値を使います。

othersがハッシュではない場合、othersのメソッドto_hashを使って暗黙の変換を試みます。

@param others マージ用のハッシュまたはメソッド to_hash でハッシュに変換できるオブジェクトです。
@retur...

Hash#reject -> Enumerator (9043.0)

self を複製して、ブロックを評価した値が真になる要 素を削除したハッシュを返します。

self を複製して、ブロックを評価した値が真になる要
素を削除したハッシュを返します。

ハッシュを返すことを除けば
Enumerable#reject とほぼ同じです。
selfを破壊的に変更したい場合はかわりにHash#delete_ifかHash#reject!を使います。

//emlist[例][ruby]{
h = { 2 =>"8" ,4 =>"6" ,6 =>"4" ,8 =>"2" }

p h.reject{|key, value| key.to_i < value.to_i} #=> {6=>"4", 8=>"2"}
//}

@see Hash#delete_if,...

絞り込み条件を変える

Hash#default_proc -> Proc | nil (9040.0)

ハッシュのデフォルト値を返す Proc オブジェクトを返します。 ハッシュがブロック形式のデフォルト値を持たない場合 nil を返します。

ハッシュのデフォルト値を返す Proc オブジェクトを返します。
ハッシュがブロック形式のデフォルト値を持たない場合 nil を返します。

//emlist[例][ruby]{
h = Hash.new {|hash, key| "The #{key} not exist in #{hash.inspect}"}
p h.default #=> nil
p block = h.default_proc #=> #<Proc:0x0x401a9ff4>
p block.call({},:foo) #=> "The foo not exist in {}"

h...

Hash#each -> Enumerator (9028.0)

ハッシュのキーと値を引数としてブロックを評価します。

ハッシュのキーと値を引数としてブロックを評価します。

反復の際の評価順序はキーが追加された順です。
ブロック付きの場合 self を、
無しで呼ばれた場合 Enumerator を返します。

each_pair は each のエイリアスです。

//emlist[例][ruby]{
{:a=>1, :b=>2}.each {|a| p a}
#=> [:a, 1]
# [:b, 2]

{:a=>1, :b=>2}.each {|k, v| p [k, v]}
#=> [:a, 1]
# [:b, 2]

p({:a=>1, :b=>2}.each_pair) # => #<...

Hash#each_pair -> Enumerator (9028.0)

ハッシュのキーと値を引数としてブロックを評価します。

ハッシュのキーと値を引数としてブロックを評価します。

反復の際の評価順序はキーが追加された順です。
ブロック付きの場合 self を、
無しで呼ばれた場合 Enumerator を返します。

each_pair は each のエイリアスです。

//emlist[例][ruby]{
{:a=>1, :b=>2}.each {|a| p a}
#=> [:a, 1]
# [:b, 2]

{:a=>1, :b=>2}.each {|k, v| p [k, v]}
#=> [:a, 1]
# [:b, 2]

p({:a=>1, :b=>2}.each_pair) # => #<...

Hash#each_value -> Enumerator (9022.0)

ハッシュの値を引数としてブロックを評価します。

ハッシュの値を引数としてブロックを評価します。

反復の際の評価順序はキーが追加された順です。
ブロック付きの場合selfを、
無しで呼ばれた場合 Enumerator を返します。

//emlist[例][ruby]{
{:a=>1, :b=>2}.each_value {|v| p v}
#=> 1
# 2

p({:a=>1, :b=>2}.each_value) # => #<Enumerator: {:a=>1, :b=>2}:each_value>
//}

@see Hash#each_pair,Hash#each_key

Hash#each_value {|value| ... } -> self (9022.0)

ハッシュの値を引数としてブロックを評価します。

ハッシュの値を引数としてブロックを評価します。

反復の際の評価順序はキーが追加された順です。
ブロック付きの場合selfを、
無しで呼ばれた場合 Enumerator を返します。

//emlist[例][ruby]{
{:a=>1, :b=>2}.each_value {|v| p v}
#=> 1
# 2

p({:a=>1, :b=>2}.each_value) # => #<Enumerator: {:a=>1, :b=>2}:each_value>
//}

@see Hash#each_pair,Hash#each_key

絞り込み条件を変える

Hash#has_value?(value) -> bool (9022.0)

ハッシュが value を値として持つ時真を返します。 値の一致判定は == で行われます。

ハッシュが value を値として持つ時真を返します。
値の一致判定は == で行われます。

@param value 探索する値を指定します。

//emlist[][ruby]{
p({1 => "one"}.value?("one")) #=> true
p({1 => "one"}.value?("two")) #=> false
//}

@see Hash#key?

Hash#value?(value) -> bool (9022.0)

ハッシュが value を値として持つ時真を返します。 値の一致判定は == で行われます。

ハッシュが value を値として持つ時真を返します。
値の一致判定は == で行われます。

@param value 探索する値を指定します。

//emlist[][ruby]{
p({1 => "one"}.value?("one")) #=> true
p({1 => "one"}.value?("two")) #=> false
//}

@see Hash#key?

Hash#filter! -> Enumerator (9013.0)

キーと値を引数としてブロックを評価した結果が真であるような要素を self に残します。

キーと値を引数としてブロックを評価した結果が真であるような要素を self
に残します。

keep_if は常に self を返します。
filter! と select! はオブジェクトが変更された場合に self を、
されていない場合に nil を返します。

ブロックが与えられなかった場合は、自身と keep_if から生成した
Enumerator オブジェクトを返します。

//emlist[例][ruby]{
h1 = {}
c = ("a".."g")
c.each_with_index {|e, i| h1[i] = e }

h2 = h1.dup
h1.select!...

Hash#keep_if -> Enumerator (9013.0)

キーと値を引数としてブロックを評価した結果が真であるような要素を self に残します。

キーと値を引数としてブロックを評価した結果が真であるような要素を self
に残します。

keep_if は常に self を返します。
filter! と select! はオブジェクトが変更された場合に self を、
されていない場合に nil を返します。

ブロックが与えられなかった場合は、自身と keep_if から生成した
Enumerator オブジェクトを返します。

//emlist[例][ruby]{
h1 = {}
c = ("a".."g")
c.each_with_index {|e, i| h1[i] = e }

h2 = h1.dup
h1.select!...

Hash#select! -> Enumerator (9013.0)

キーと値を引数としてブロックを評価した結果が真であるような要素を self に残します。

キーと値を引数としてブロックを評価した結果が真であるような要素を self
に残します。

keep_if は常に self を返します。
filter! と select! はオブジェクトが変更された場合に self を、
されていない場合に nil を返します。

ブロックが与えられなかった場合は、自身と keep_if から生成した
Enumerator オブジェクトを返します。

//emlist[例][ruby]{
h1 = {}
c = ("a".."g")
c.each_with_index {|e, i| h1[i] = e }

h2 = h1.dup
h1.select!...

絞り込み条件を変える

Net::HTTPHeader#fetch(key) {|hash| .... } -> String (823.0)

key ヘッダフィールドを返します。

key ヘッダフィールドを返します。

たとえばキー 'content-length' に対しては '2048'
のような文字列が得られます。キーが存在しなければ nil を返します。

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

一種類のヘッダフィールドが一つのヘッダの中に複数存在する
場合にはそれを全て ", " で連結した文字列を返します。
key は大文字小文字を区別しません。

@param key ヘッダフィール名を文字列で与えます。
@param default 該...

DBM#reject { |key, value| ... } -> Hash (625.0)

ブロックを評価した値が真であれば該当する要素を削除します。

ブロックを評価した値が真であれば該当する要素を削除します。

self.to_hash.reject{|key, value| ... }

と同じです。

@see Hash#reject

GDBM#reject {|key, value| ... } -> Hash (625.0)

ブロックを評価した値が真であれば該当する要素を削除します。

ブロックを評価した値が真であれば該当する要素を削除します。

self.to_hash.reject{|key, value| ... }

と同じです。

@see Hash#reject

SDBM#reject {|key, value| ... } -> Hash (625.0)

ブロックを評価した値が真であれば該当する要素を削除します。

ブロックを評価した値が真であれば該当する要素を削除します。

self.to_hash.reject{|key, value| ... }

と同じです。

@see Hash#reject

Gem::ConfigFile#each {|key, value| ... } -> Hash (607.0)

設定ファイルの各項目のキーと値をブロック引数として与えられたブロックを評価します。

設定ファイルの各項目のキーと値をブロック引数として与えられたブロックを評価します。

絞り込み条件を変える

Rake::TaskArguments#each {|key, val| ... } -> Hash (607.0)

自身に含まれるパラメータ名とそれに対応する値をブロックパラメータとしてブロックを評価します。

自身に含まれるパラメータ名とそれに対応する値をブロックパラメータとしてブロックを評価します。


@see Hash#each

Rake::TaskArguments#with_defaults(defaults) -> Hash (358.0)

パラメータにデフォルト値をセットします。

パラメータにデフォルト値をセットします。

@param defaults デフォルト値として使用するキーと値を格納したハッシュを指定します。

//emlist[][ruby]{
# Rakefile での記載例とする

task default: :test_rake_app
task :test_rake_app do
arguments = Rake::TaskArguments.new(["name1", "name2"], ["value1", "value2"])
arguments.to_hash ...

Array#to_h -> Hash (352.0)

self を [key, value] のペアの配列として解析した結果を Hash にして 返します。

self を [key, value] のペアの配列として解析した結果を Hash にして
返します。

//emlist[例][ruby]{
bar], [1, 2.to_h # => {:foo => :bar, 1 => 2}
//}

ブロックを指定すると配列の各要素でブロックを呼び出し、
その結果をペアとして使います。

//emlist[ブロック付きの例][ruby]{
["foo", "bar"].to_h {|s| [s.ord, s]} # => {102=>"foo", 98=>"bar"}
//}

Array#to_h { block } -> Hash (352.0)

self を [key, value] のペアの配列として解析した結果を Hash にして 返します。

self を [key, value] のペアの配列として解析した結果を Hash にして
返します。

//emlist[例][ruby]{
bar], [1, 2.to_h # => {:foo => :bar, 1 => 2}
//}

ブロックを指定すると配列の各要素でブロックを呼び出し、
その結果をペアとして使います。

//emlist[ブロック付きの例][ruby]{
["foo", "bar"].to_h {|s| [s.ord, s]} # => {102=>"foo", 98=>"bar"}
//}

Enumerable#to_h(*args) -> Hash (352.0)

self を [key, value] のペアの配列として解析した結果を Hash にして 返します。

self を [key, value] のペアの配列として解析した結果を Hash にして
返します。

@param args each の呼び出し時に引数として渡されます。

//emlist[例][ruby]{
%i[hello world].each_with_index.to_h # => {:hello => 0, :world => 1}
//}

ブロックを指定すると各要素でブロックを呼び出し、
その結果をペアとして使います。

//emlist[ブロック付きの例][ruby]{
(1..5).to_h {|x| [x, x ** 2]} # => {1=>1, 2=>4, ...

絞り込み条件を変える

Enumerable#to_h(*args) { ... } -> Hash (352.0)

self を [key, value] のペアの配列として解析した結果を Hash にして 返します。

self を [key, value] のペアの配列として解析した結果を Hash にして
返します。

@param args each の呼び出し時に引数として渡されます。

//emlist[例][ruby]{
%i[hello world].each_with_index.to_h # => {:hello => 0, :world => 1}
//}

ブロックを指定すると各要素でブロックを呼び出し、
その結果をペアとして使います。

//emlist[ブロック付きの例][ruby]{
(1..5).to_h {|x| [x, x ** 2]} # => {1=>1, 2=>4, ...

OpenSSL::SSL::SSLContext#set_params(params) -> Hash (340.0)

パラメータをハッシュで設定します。

パラメータをハッシュで設定します。

渡すハッシュテーブルは { パラメータ名のシンボル => パラメータの値 } という
形をしていなければなりません。

以下のパラメータを設定できます。
* :cert (OpenSSL::SSL::SSLContext#cert=)
* :key (OpenSSL::SSL::SSLContext#key=)
* :client_ca (OpenSSL::SSL::SSLContext#client_ca=)
* :ca_file (OpenSSL::SSL::SSLContext#ca_file=)
* :ca_path (Open...