Ruby 1.9.3 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Arrayクラス > shift

instance method Array#shift

shift(n = 1) -> Array | nil

自身の先頭から指定された n 個の要素を取り除いてそれを返します。 n を指定しなかった場合は要素そのものか nil を、n を指定した場合は、 足りればサイズが n の配列を返します。n よりも自身のサイズが 小さい時は自身のサイズになります。残りの要素は前に詰められます。

また、自身が空配列の時は n が指定されていない場合は nil を、 n が明示的に指定されている場合は (たとえ n = 1 でも) 空の配列を返します。

返す値と副作用の両方を利用して、個数を指定して配列を 2 分する簡単な方法として使えます。

[PARAM] n:
自身から取り除きたい要素の個数を非負整数で指定します。

例:

a = [0, 1, 2, 3, 4]
p a.shift            #=> 0
p a                  #=> [1, 2, 3, 4]

p [].shift           #=> nil
p [].shift(1)        #=> []

[SEE_ALSO] Array#push, Array#pop, Array#unshift

class Array