D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
proc
/
self
/
root
/
opt
/
alt
/
ruby18
/
share
/
ri
/
1.8
/
system
/
Hash
/
Filename :
new-c.yaml
back
Copy
--- !ruby/object:RI::MethodDescription aliases: [] block_params: comment: - !ruby/struct:SM::Flow::P body: Returns a new, empty hash. If this hash is subsequently accessed by a key that doesn't correspond to a hash entry, the value returned depends on the style of <tt>new</tt> used to create the hash. In the first form, the access returns <tt>nil</tt>. If <em>obj</em> is specified, this single object will be used for all <em>default values</em>. If a block is specified, it will be called with the hash object and the key, and should return the default value. It is the block's responsibility to store the value in the hash if required. - !ruby/struct:SM::Flow::VERB body: " h = Hash.new("Go Fish")\n h["a"] = 100\n h["b"] = 200\n h["a"] #=> 100\n h["c"] #=> "Go Fish"\n # The following alters the single default object\n h["c"].upcase! #=> "GO FISH"\n h["d"] #=> "GO FISH"\n h.keys #=> ["a", "b"]\n\n # While this creates a new default object each time\n h = Hash.new { |hash, key| hash[key] = "Go Fish: #{key}" }\n h["c"] #=> "Go Fish: c"\n h["c"].upcase! #=> "GO FISH: C"\n h["d"] #=> "Go Fish: d"\n h.keys #=> ["c", "d"]\n" full_name: Hash::new is_singleton: true name: new params: | Hash.new => hash Hash.new(obj) => aHash Hash.new {|hash, key| block } => aHash visibility: public