📝
Ruby 配列から要素を削除するメソッドまとめ
今日は配列から要素を削除するメソッドをまとめていきます。
以前作成した記事、Ruby 配列に要素を追加するメソッドまとめと対になるような内容です。
配列の先頭の要素を取り除く shiftメソッド
逆に要素を先頭に挿入するのはunshift
メソッドです。
shift
メソッドを配列に使用すると、返り値は取り除かれた先頭の要素になります。また引数で先頭から何要素取り除くのか指定できます。
# 基本構文
配列.shift(n)
# 例
irb(main):013:0> array= ["a", "b", "c", "d", "e"]
=> ["a", "b", "c", "d", "e"]
irb(main):014:0> s = array.shift
=> "a"
irb(main):015:0> s
=> "a"
irb(main):016:0> array
=> ["b", "c", "d", "e"]
# 例2 引数を指定した場合
irb(main):017:0> array= ["a", "b", "c", "d", "e"]
=> ["a", "b", "c", "d", "e"]
irb(main):018:0> s = array.shift(2)
=> ["a", "b"]
irb(main):019:0> s
=> ["a", "b"]
irb(main):020:0> array
=> ["c", "d", "e"]
配列の末尾の要素を取り除く popメソッド
pop
メソッドの使い方はshift
メソッドと一緒です。
pop
メソッドを配列に使用すると、返り値は取り除かれた末尾の要素となり、引数で取り除く要素数を指定できます。
# 基本構文
配列.pop(n)
# 例
irb(main):021:0> array= ["a", "b", "c", "d", "e"]
=> ["a", "b", "c", "d", "e"]
irb(main):022:0> s = array.pop
=> "e"
irb(main):023:0> s
=> "e"
irb(main):024:0> array
=> ["a", "b", "c", "d"]
# 例2 引数を指定した場合
irb(main):027:0> array= ["a", "b", "c", "d", "e"]
=> ["a", "b", "c", "d", "e"]
irb(main):028:0> s = array.pop(2)
=> ["d", "e"]
irb(main):029:0> s
=> ["d", "e"]
irb(main):030:0> array
=> ["a", "b", "c"]
参考
Discussion