こんにちは。たいら(@tairaengineer2)です。
転職を繰り返し現在4社経験している、11年目エンジニアです。
この記事では、 Rubyで配列の先頭から指定した数の要素を取得できるArray.takeメソッドについて
- Array.takeメソッドとは
- Array.takeメソッドを使うときの注意点
- Array.takeメソッドを使ったサンプルプログラム
と、この記事で丁寧に解説していきます。
前提条件:実行環境について
実行環境は以下の通りです。
OS | Windows10 |
---|---|
Rubyのバージョン | 2.6.6 |
Rubyのインストールは、下の記事をご参考ください。
Array.takeメソッドとは
Array.takeメソッドとは、呼び出している配列の先頭から引数で指定した数の要素を取得し配列として返すメソッドです。
使い方サンプルは以下です。
1 2 |
sample = ["a", "b", "c", "d"] result = sample.take(2) |
変数resultには
1 |
["a", "b"] |
という配列が返されます。
もし呼び出している配列が空だった場合、空の配列を返します。
Array.takeメソッドを使うときの注意点
Array.takeメソッドを使うときの注意点として、引数には0以上の数を指定する必要があります。
たとえば
1 2 |
sample = ["a", "b", "c", "d"] result = sample.take(-3) |
と負の数を指定して実行した場合
1 2 3 |
Traceback (most recent call last): 1: from array_take_sample.rb:2:in `<main>' array_take_sample.rb:2:in `take': attempt to take negative size (ArgumentError) |
とエラーとなるので、ご注意ください。
では、次の章で実際に使ってみます。
Array.takeメソッドを解説するプログラムの概要
Array.takeメソッドを解説するプログラムでは、実行する配列を
- 空の配列の場合
- 空でない配列の場合(引数は配列の長さ未満)
- 空でない配列の場合(引数は配列の長さより大きい)
の3パターンでArray.takeメソッドを実行し、取得した配列を表示させます。
Rubyサンプルプログラム
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
puts "■takeメソッドサンプル" puts puts "・空の配列の場合" emp_array = [] emp = emp_array.take(3) puts "配列:#{emp_array}" puts "取得した配列:#{emp}" puts puts "・空でない配列の場合(引数は配列の長さ未満)" fruit_array = [ "パイナップル", "ぶどう", "いちご", "みかん"] fruit = fruit_array.take(2) puts "配列:#{fruit_array}" puts "取得した配列:#{fruit}" puts puts "・空でない配列の場合(引数は配列の長さより大きい)" vegetable_array = ["キャベツ", "レタス", "ニンジン", "ジャガイモ"] vegetable = vegetable_array.take(10) puts "配列:#{vegetable_array}" puts "取得した配列:#{vegetable}" |
実行結果
Rubyプログラムを実行するやり方は、以下の記事をご参考ください。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
■takeメソッドサンプル ・空の配列の場合 配列:[] 取得した配列:[] ・空でない配列の場合(引数は配列の長さ未満) 配列:["パイナップル", "ぶどう", "いちご", "みかん"] 取得した配列:["パイナップル", "ぶどう"] ・空でない配列の場合(引数は配列の長さより大きい) 配列:["キャベツ", "レタス", "ニンジン", "ジャガイモ"] 取得した配列:["キャベツ", "レタス", "ニンジン", "ジャガイモ"] |
配列の先頭から引数で指定した数だけの要素を取得できていることが確認できました。
まとめ:Array.takeメソッドを使ってみよう!
以上がArray.takeメソッドについての解説でした!
あなたのご参考になったのなら、とても嬉しいです(*´▽`*)
ではでは~(・ω・)ノシ
コメント