--- shift

    ϥå夫ǤҤȤļ[key,value] ȤȤ
    ֤ޤ

    ϥå夬ξ硢ǥեdefaultʤ 
    nil 򡢥ǥեͤĤʤ餽֤ͤޤ(ΤȤ
    [key,value] Ȥ֤ͤʬǤϤʤȤ)

        h = Hash.new
        p h.empty?              # => true
        p h[0]                  # => nil
        p h.shift               # => nil
        p h.default             # => nil
        h.each {|v| p v}        # =>
        p h.to_a                # => []

        h1 = Hash.new("default value")
        p h1.empty?             # => true
        p h1[0]                 # => "default value"
        p h1.shift              # => "default value"
        p h1.default            # => "default value"
        h1.each {|v| p v}       # =>
        p h1.to_a               # => []

        # ruby 1.7 feature
        h2 = Hash.new {|arg| arg}
        p h2.empty?             # => true
        p h2[0]                 # => [{}, 0]
        p h2.shift              # => [{}, nil]
        p h2.default            # => [{}, nil]
        h2.each {|v| p v}       # =>
        p h2.to_a               # => []

