ライブラリ
- ビルトイン (2910)
クラス
- Array (101)
- Bignum (3)
- Data (12)
- Encoding (12)
-
Encoding
:: Converter (48) -
Enumerator
:: ArithmeticSequence (7) - Float (12)
- Hash (1182)
- IO (168)
- KeyError (16)
- MatchData (26)
- Method (12)
- Module (12)
- Numeric (12)
- Object (72)
- Proc (18)
- Range (12)
- Rational (12)
- Regexp (24)
-
RubyVM
:: InstructionSequence (72) - Set (6)
- String (240)
- Struct (51)
- Thread (12)
- Time (14)
- UnboundMethod (24)
モジュール
- Enumerable (105)
- GC (60)
-
GC
:: Profiler (12) - Kernel (180)
- Marshal (24)
- ObjectSpace (12)
- Signal (12)
オブジェクト
- ENV (250)
キーワード
- % (12)
- < (10)
- <= (10)
- == (12)
- === (12)
- > (10)
- >= (10)
- ENV (12)
- Enumerable (12)
- KeyError (12)
- Lazy (12)
- Numeric (12)
-
SCRIPT
_ LINES _ _ (12) - Set (3)
- [] (37)
- []= (12)
- aliases (12)
- all? (24)
- assoc (24)
- classify (3)
- clear (12)
- clone (12)
- collect (28)
- compact (15)
- compact! (9)
-
compare
_ by _ identity (12) -
compare
_ by _ identity? (12) - compile (12)
-
compile
_ file (12) -
compile
_ option (12) -
compile
_ option= (12) -
count
_ objects (12) -
deconstruct
_ keys (13) - default (24)
- default= (12)
-
default
_ proc (12) -
default
_ proc= (12) - delete (24)
-
delete
_ if (24) - difference (7)
- dig (30)
- dump (24)
- dup (12)
- each (24)
-
each
_ key (24) -
each
_ pair (24) -
each
_ value (24) - empty? (12)
- encode (36)
- eql? (48)
- equal? (12)
- except (8)
- exec (48)
- fetch (36)
-
fetch
_ values (20) - filter (28)
- filter! (28)
- flatten (12)
- format (12)
-
group
_ by (24) - gsub (48)
- gsub! (48)
-
handle
_ interrupt (12) -
has
_ key? (12) -
has
_ value? (12) - hash (181)
- include? (12)
- index (7)
- inspect (24)
- intersection (6)
- invert (24)
-
is
_ a? (12) -
keep
_ if (48) - key (20)
- key? (12)
- keys (12)
-
kind
_ of? (12) -
latest
_ gc _ info (24) - length (12)
- list (12)
- map (28)
- member? (12)
- merge (24)
- merge! (24)
-
named
_ captures (24) - new (39)
- owner (12)
- popen (168)
-
primitive
_ convert (48) - rassoc (24)
-
raw
_ data (12) - receiver (8)
- rehash (24)
- reject (48)
- reject! (24)
- replace (24)
- reset (3)
-
ruby2
_ keywords (18) -
ruby2
_ keywords _ hash? (6) - select (48)
- select! (48)
- shift (12)
- size (12)
- slice (15)
- spawn (48)
- sprintf (12)
- stat (24)
- store (12)
- sub (36)
- sub! (36)
- system (48)
- tally (10)
-
to
_ a (24) -
to
_ h (101) -
to
_ hash (36) -
to
_ proc (10) -
to
_ s (24) -
transform
_ keys (20) -
transform
_ keys! (20) -
transform
_ values (18) -
transform
_ values! (18) -
try
_ convert (12) - union (7)
- update (24)
- value? (12)
- values (12)
-
values
_ at (12) -
verify
_ compaction _ references (6) - | (12)
検索結果
先頭5件
-
Hash
. new(ifnone = nil) -> Hash (29155.0) -
空の新しいハッシュを生成します。ifnone はキーに対 応する値が存在しない時のデフォルト値です。設定したデフォルト値はHash#defaultで参照できます。
...fnone はキーに対
応する値が存在しない時のデフォルト値です。設定したデフォルト値はHash#defaultで参照できます。
ifnoneを省略した Hash.new は {} と同じです。
デフォルト値として、毎回同一のオブジェクトifnoneを返します......。
それにより、一箇所のデフォルト値の変更が他の値のデフォルト値にも影響します。
//emlist[][ruby]{
h = Hash.new([])
h[0] << 0
h[1] << 1
p h.default #=> [0, 1]
//}
これを避けるには、破壊的でないメソッドで再代入する必要が有ります......[例][ruby]{
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([].freeze)... -
Hash
# compact -> Hash (29153.0) -
compact は自身から value が nil のもの取り除いた Hash を生成して返します。 compact! は自身から破壊的に value が nil のものを取り除き、変更が行われた場合は self を、そうでなければ nil を返します。
...た Hash を生成して返します。 compact! は自身から破壊的に value が nil のものを取り除き、変更が行われた場合は self を、そうでなければ nil を返します。
//emlist[例][ruby]{
hash = {a: 1, b: nil, c: 3}
p hash.compact #=> {:a=>1, :c=>3}
p hash......#=> {:a=>1, :b=>nil, :c=>3}
hash.compact!
hash #=> {:a=>1, :c=>3}
p hash.compact! #=> nil
//}
@see Array#compact... -
Hash
. [](*key _ and _ value) -> Hash (29147.0) -
新しいハッシュを生成します。 引数は必ず偶数個指定しなければなりません。奇数番目がキー、偶数番目が値になります。
...値になります。
このメソッドでは生成するハッシュにデフォルト値を指定することはできません。
Hash.newを使うか、Hash#default=で後から指定してください。
@param key_and_value 生成するハッシュのキーと値の組です。必ず偶数......][ruby]{
ary = [1,"a", 2,"b", 3,["c"]]
p Hash[*ary] # => {1=>"a", 2=>"b", 3=>["c"]}
//}
(2) キーと値のペアの配列からハッシュへ
//emlist[][ruby]{
alist = [[1,"a"], [2,"b"], [3,["c"]]]
p alist.flatten(1) # => [1, "a", 2, "b", 3, ["c"]]
p Hash[*alist.flatten(1)] # => {1=>"a", 2=>"b......ls].transpose
p alist # => [[1, "a"], [2, "b"], [3, ["c"]]]
p Hash[alist] # => {1=>"a", 2=>"b", 3=>["c"]}
//}
(4) キーや値が配列の場合
//emlist[][ruby]{
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
# merge(*others) -> Hash (29132.0) -
selfとothersのハッシュの内容を順番にマージ(統合)した結果を返します。 デフォルト値はselfの設定のままです。
...値を使います。
othersがハッシュではない場合、othersのメソッドto_hashを使って暗黙の変換を試みます。
@param others マージ用のハッシュまたはメソッド to_hash でハッシュに変換できるオブジェクトです。
@return マージした結......to_hash
{:Australia => 'Sydney',
:France => 'Paris'
}
end
end
h = {:Germany => 'Berlin',
:Australia => 'Canberra',
:France => 'Paris'
}
# 暗黙の変換
p h.merge(Foo.new) # => {:Germany=>"Berlin", :Australia=>"Sydney", :France=>"Paris"}
//}
@see Hash#update,Hash#r... -
Hash
# merge(*others) {|key , self _ val , other _ val| . . . } -> Hash (29132.0) -
selfとothersのハッシュの内容を順番にマージ(統合)した結果を返します。 デフォルト値はselfの設定のままです。
...値を使います。
othersがハッシュではない場合、othersのメソッドto_hashを使って暗黙の変換を試みます。
@param others マージ用のハッシュまたはメソッド to_hash でハッシュに変換できるオブジェクトです。
@return マージした結......to_hash
{:Australia => 'Sydney',
:France => 'Paris'
}
end
end
h = {:Germany => 'Berlin',
:Australia => 'Canberra',
:France => 'Paris'
}
# 暗黙の変換
p h.merge(Foo.new) # => {:Germany=>"Berlin", :Australia=>"Sydney", :France=>"Paris"}
//}
@see Hash#update,Hash#r... -
Hash
# merge(other) -> Hash (29132.0) -
selfとotherのハッシュの内容をマージ(統合)した結果を返します。デフォルト値はselfの設定のままです。
...の値を使います。
otherがハッシュではない場合、otherのメソッドto_hashを使って暗黙の変換を試みます。
@param other マージ用のハッシュまたはメソッド to_hash でハッシュに変換できるオブジェクトです。
@return マージした結......to_hash
{:Australia => 'Sydney',
:France => 'Paris'
}
end
end
h = {:Germany => 'Berlin',
:Australia => 'Canberra',
:France => 'Paris'
}
# 暗黙の変換
p h.merge(Foo.new) # => {:Germany=>"Berlin", :Australia=>"Sydney", :France=>"Paris"}
//}
@see Hash#update,Hash#r... -
Hash
# merge(other) {|key , self _ val , other _ val| . . . } -> Hash (29132.0) -
selfとotherのハッシュの内容をマージ(統合)した結果を返します。デフォルト値はselfの設定のままです。
...の値を使います。
otherがハッシュではない場合、otherのメソッドto_hashを使って暗黙の変換を試みます。
@param other マージ用のハッシュまたはメソッド to_hash でハッシュに変換できるオブジェクトです。
@return マージした結......to_hash
{:Australia => 'Sydney',
:France => 'Paris'
}
end
end
h = {:Germany => 'Berlin',
:Australia => 'Canberra',
:France => 'Paris'
}
# 暗黙の変換
p h.merge(Foo.new) # => {:Germany=>"Berlin", :Australia=>"Sydney", :France=>"Paris"}
//}
@see Hash#update,Hash#r... -
Hash
# except(*keys) -> Hash (29129.0) -
引数で指定された以外のキーとその値だけを含む Hash を返します。
...引数で指定された以外のキーとその値だけを含む Hash を返します。
引数に指定されていて Hash に存在しないキーは無視されます。
//emlist[][ruby]{
h = { a: 100, b: 200, c: 300 }
h.except(:a) # => {:b=>200, :c=>300}
//}
@see Hash#slice, ENV.except... -
Hash
. try _ convert(obj) -> Hash | nil (29129.0) -
to_hash メソッドを用いて obj をハッシュに変換しようとします。
...to_hash メソッドを用いて obj をハッシュに変換しようとします。
何らかの理由で変換できないときには nil を返します。
このメソッドは引数がハッシュであるかどうかを調べるために使えます。
//emlist[][ruby]{
Hash.try_convert({......1=>2}) # => {1=>2}
Hash.try_convert("1=>2") # => nil
//}... -
Hash
# transform _ keys {|key| . . . } -> Hash (29127.0) -
すべてのキーに対してブロックを呼び出した結果で置き換えたハッシュを返します。 値は変化しません。
...べてのキーに対してブロックを呼び出した結果で置き換えたハッシュを返します。
値は変化しません。
@param hash 置き換え前のキーから置き換え後のキーへのハッシュを指定します。
//emlist[例][ruby]{
h = { a: 1, b: 2, c: 3 }
h.tran......") # => {"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}" }
# => {"a.0"=>1, "b.1"=>2, "c.2"=>3}
//}
@see Hash#transform_keys!
@see Hash#transform_values
@see Hash#transform_values!... -
Hash
. [](other) -> Hash (29127.0) -
新しいハッシュを生成します。 引数otherと同一のキーと値を持つ新たなハッシュを生成して返します。
...のキーと値を持つ新たなハッシュを生成して返します。
引数otherがハッシュではない場合、otherのメソッドto_hashを使って暗黙の変換を試みます。
デフォルト値はコピーしません。生成されたハッシュのデフォルト値は nil......します。
@param other 生成元となるハッシュまたはメソッド to_hash でハッシュに変換できるオブジェクトです。
//emlist[][ruby]{
h = {1 => "value"}
h.default = "none"
g = Hash[h]
p g #=> {1=>"value"}
p h[:no] #=> "none"
p g[:no] #=> nil
h[:add] = "some"
p h #... -
Hash
# invert -> Hash (29125.0) -
値からキーへのハッシュを作成して返します。
...備えて、変換後の値を配列として保持するには、次のようにします。
//emlist[][ruby]{
def safe_invert(orig_hash)
orig_hash.each_key.group_by do |key|
orig_hash[key]
end
end
p safe_invert({"a"=>1, "b"=>1, "c"=>3}) # => {1=>["a", "b"], 3=>["c"]}
//}
@see Hash#key... -
Hash
# reject {|key , value| . . . } -> Hash (29125.0) -
self を複製して、ブロックを評価した値が真になる要 素を削除したハッシュを返します。
...す。
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#delete,Enumerable#reject...