こんにちは。たいら(@tairaengineer2)です。
転職を繰り返し現在4社経験している、11年目エンジニアです。
この記事では、 Rubyで配列の末尾の要素を取り除くことができるpopメソッドについて
- popメソッドとは
- popメソッドを使ったサンプルプログラム
と、この記事で丁寧に解説していきます。
前提条件:実行環境について
実行環境は以下の通りです。
OS | Windows10 |
---|---|
Rubyのバージョン | 2.6.6 |
Rubyのインストールは、下の記事をご参考ください。
popメソッドとは
popメソッドとは、レシーバーの配列から末尾の要素を取り除き、取り除いた要素を返すメソッドです。
レシーバーについては、以下の記事をご参考ください。
popメソッドは使い方が
- パターン1:引数なしの場合
- パターン2:引数ありの場合
の合計2パターンあります。
それぞれ解説します。
パターン1:引数なしの場合
引数なしの場合、配列の末尾の要素を1つ取り除き、取り除いた要素を返します。
使い方サンプルは以下です。
1 2 |
sample = ["a", "b", "c"] result = sample.pop |
実行後変数resultには
1 |
c |
という値が返され、配列sampleは
1 |
["a", "b"] |
という配列になっています。
もし空の配列に対してpopメソッドを実行した場合、nilが返されます。
パターン2:引数ありの場合
引数ありの場合、配列の末尾の要素を引数で指定した数だけ取り除き、取り除いた要素を配列として返します。
使い方サンプルは以下です。
1 2 |
sample = ["a", "b", "c"] result = sample.pop(2) |
実行後変数resultには
1 |
["b", "c"] |
という配列が返され、配列sampleは
1 |
["a"] |
という配列になっています。
もし空の配列に対してpopメソッドを実行した場合、空の配列が返されます。
また配列の要素数より大きい数をpopメソッドの引数に指定した場合、レシーバーの配列は空の配列になり、配列そのものが返り値として返されます。
では、次の章で実際に使ってみます。
popメソッドを解説するプログラムの概要
popメソッドを解説するプログラムでは、
- パターン1:引数を指定しない場合
- パターン2:引数を指定する場合(配列の要素数より小さい)
- パターン2:引数を指定する場合(配列の要素数より大きい)
それぞれでpopメソッドを使い、結果を表示させます。
Rubyサンプルプログラム
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
puts "■popメソッドサンプル" puts puts "・パターン1:引数を指定しない場合" num_array = [9, 8, 12, [-6, 5]] puts "実行前配列:#{num_array}" delete_num = num_array.pop puts "実行後配列:#{num_array}" puts "取り除いた要素:#{delete_num}" puts puts "・パターン2:引数を指定する場合(配列の要素数より小さい)" vegetable_array = ["キャベツ", "レタス", "ニンジン", "ジャガイモ"] puts "実行前配列:#{vegetable_array}" delete_vegetable = vegetable_array.pop(2) puts "実行後配列:#{vegetable_array}" puts "取り除いた要素:#{delete_vegetable}" puts puts "・パターン2:引数を指定する場合(配列の要素数より大きい)" fruit_array = ["いちご", "みかん", "グレープフルーツ", ["パイナップル", "ぶどう"]] puts "実行前配列:#{fruit_array}" delete_fruit = fruit_array.pop(10) puts "実行後配列:#{fruit_array}" puts "取り除いた要素:#{delete_fruit}" |
実行結果
Rubyプログラムを実行するやり方は、以下の記事をご参考ください。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
■popメソッドサンプル ・パターン1:引数を指定しない場合 実行前配列:[9, 8, 12, [-6, 5]] 実行後配列:[9, 8, 12] 取り除いた要素:[-6, 5] ・パターン2:引数を指定する場合(配列の要素数より小さい) 実行前配列:["キャベツ", "レタス", "ニンジン", "ジャガイモ"] 実行後配列:["キャベツ", "レタス"] 取り除いた要素:["ニンジン", "ジャガイモ"] ・パターン2:引数を指定する場合(配列の要素数より大きい) 実行前配列:["いちご", "みかん", "グレープフルーツ", ["パイナップル", "ぶどう"]] 実行後配列:[] 取り除いた要素:["いちご", "みかん", "グレープフルーツ", ["パイナップル", "ぶどう"]] |
配列の末尾から要素を取り除いていることが確認できました。
まとめ:popメソッドを使ってみよう!
以上がpopメソッドについての解説でした!
あなたのご参考になったのなら、とても嬉しいです(*´▽`*)
ではでは~(・ω・)ノシ
コメント