Tbpgr Blog

Ruby プログラマ tbpgr(てぃーびー) のブログ

Ruby | Hash | shift

概要

Hash#shift

詳細

Hashから要素を取り出す。Hashが空の場合はnilを返す。
どの要素を返すかは不定。
Hashに対する破壊的な操作。

サンプルコード
# encoding: utf-8
require 'tbpgr_utils'

h = {
  hoge_key: :hoge_value,
  hige_key: :hige_value,
  hage_key: :hage_value,
}

bulk_puts_eval binding, <<-EOS
h
h.shift
h
h.shift
h
h.shift
h
h.shift
EOS
__END__
下記はTbpgrUtils gemの機能
bulk_puts_eval

https://rubygems.org/gems/tbpgr_utils
https://github.com/tbpgr/tbpgr_utils
出力
h # => {:hoge_key=>:hoge_value, :hige_key=>:hige_value, :hage_key=>:hage_value}
h.shift # => [:hoge_key, :hoge_value]
h # => {:hige_key=>:hige_value, :hage_key=>:hage_value}
h.shift # => [:hige_key, :hige_value]
h # => {:hage_key=>:hage_value}
h.shift # => [:hage_key, :hage_value]
h # => {}
h.shift # => nil