るりまサーチ

最速Rubyリファレンスマニュアル検索!
31件ヒット [1-31件を表示] (0.040秒)
トップページ > クラス:Hash[x] > 種類:特異メソッド[x]

ライブラリ

キーワード

検索結果

Hash.[](*key_and_value) -> Hash (2.0)

新しいハッシュを生成します。 引数は必ず偶数個指定しなければなりません。奇数番目がキー、偶数番目が値になります。

...値になります。

このメソッドでは生成するハッシュにデフォルト値を指定することはできません。
Hash
.newを使うか、Hash#default=で後から指定してください。

@param key_and_value 生成するハッシュのキーと値の組です。必ず偶数...
..., ...] の配列からハッシュへ

ary = [1,"a", 2,"b", 3,["c"]]
p Hash[*ary] # => {1=>"a", 2=>"b", 3=>["c"]}

(2) キーと値のペアの配列からハッシュへ

alist = [[1,"a"], [2,"b"], [3,["c"]]]
p Hash[*alist.flatten(1)] # => {1=>"a", 2=>"b", 3=>["c"]}

(3) キーと値の...
...list = keys.zip(vals) # あるいは alist = [keys,vals].transpose
p Hash[alist] # => {1=>"a", 2=>"b", 3=>["c"]}

(4) キーや値が配列の場合

alist = [[1,["a"]], [2,["b"]], [3,["c"]], [[4,5], ["a", "b"]]]
hash
= Hash[alist] # => {1=>["a"], 2=>["b"], 3=>["c"], [4, 5]=>["a", "b"]}...

Hash.[](other) -> Hash (2.0)

新しいハッシュを生成します。 引数otherと同一のキーと値を持つ新たなハッシュを生成して返します。

...のキーと値を持つ新たなハッシュを生成して返します。

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

デフォルト値はコピーしません。生成されたハッシュのデフォルト値は nil...
...影響します。

@param other 生成元となるハッシュまたはメソッド to_hash でハッシュに変換できるオブジェクトです。

h = {1 => "value"}
h.default = "none"

g = Hash[h]
p g #=> {1=>"value"}

p h[:no] #=> "none"
p g[:no] #=> nil

h[:add] = "som...

Hash.new {|hash, key| ... } -> Hash (2.0)

空の新しいハッシュを生成します。ブロックの評価結果がデフォルト値になりま す。設定したデフォルト値はHash#default_procで参照できます。

...空の新しいハッシュを生成します。ブロックの評価結果がデフォルト値になりま
す。設定したデフォルト値はHash#default_procで参照できます。

値が設定されていないハッシュ要素を参照するとその都度ブロックを
実行し、そ...
...ト値は全部同一のオブジェクトなので、
# 破壊的変更によって他のキーに対応する値も変更されます。
h = Hash.new("foo")

p h[1] #=> "foo"
p h[1].object_id #=> 6127170
p h[1] << "bar" #=> "foobar"
p h[1]...
...だ無いキーが呼び出される度に
# ブロックを評価するので、全て別のオブジェクトになります。
h = Hash.new {|hash, key| hash[key] = "foo"}

p h[1] #=> "foo"
p h[1].object_id #=> 6126900
p h[1] << "bar" #=> "foobar"
p h...

Hash.new(ifnone = nil) -> Hash (2.0)

空の新しいハッシュを生成します。ifnone はキーに対 応する値が存在しない時のデフォルト値です。設定したデフォルト値はHash#defaultで参照できます。

...fnone はキーに対
応する値が存在しない時のデフォルト値です。設定したデフォルト値はHash#defaultで参照できます。

ifnoneを省略した Hash.new は {} と同じです。

デフォルト値として、毎回同一のオブジェクトifnoneを返します...
...
それにより、一箇所のデフォルト値の変更が他の値のデフォルト値にも影響します。

h = Hash.new([])
h[0] << 0
h[1] << 1
p h.default #=> [0, 1]

これを避けるには、破壊的でないメソッドで再代入する必要が有ります。
また、...
...h = Hash.new([])

p h[1] #=> []
p h[1].object_id #=> 6127150
p h[1] << "bar" #=> ["bar"]
p h[1] #=> ["bar"]

p h[2] #=> ["bar"]
p h[2].object_id #=> 6127150

p h #=> {}


h = Hash.new(...

Hash.try_convert(obj) -> Hash | nil (2.0)

to_hash メソッドを用いて obj をハッシュに変換しようとします。

...to_hash メソッドを用いて obj をハッシュに変換しようとします。

何らかの理由で変換できないときには nil を返します。
このメソッドは引数がハッシュであるかどうかを調べるために使えます。

Hash
.try_convert({1=>2}) # => {...
...1=>2}
Hash
.try_convert("1=>2") # => nil...

絞り込み条件を変える

Hash.yaml_tag_subclasses? -> true (2.0)

常に true を返します。

常に true を返します。

ライブラリ内部で使用します。