このチャプターでは配列とは何かを学び、配列の扱い方のマスターを目指します。
変数や条件分岐に続いて配列です。 このチャプターはなんだかタイトルを見ると全部がとても難しそうに感じますね。
でも配列は変数さえ理解できていれば恐がる必要はありません。わからなくなったら変数のレッスンへ戻って復習してみてくださいね。
変数とは1つの箱に1つのデータ(値)を代入したものでした。
これに対して配列はひとつの箱に複数のデータを入れることができます。
それでは実際に、Cloud9で配列に値を代入してみましょう。ターミナルで$irbとコマンドを入力してください。
students = ["吉田","田所","峰","伊藤",]
と入力します。変数の時と同様に、studentsという箱には「吉田 田所 峰 伊藤」という値を代入するという意味で=(イコール)を使用しています。
このような表示になっていれば、配列に複数の値を代入することができています。
配列のデータ(値)にはそれぞれ0から始まる番号がふられています。
複数あるデータの中の1つの中身を参照する場合は、参照したいデータ(値)の番号を指定します。
では先ほどのターミナルの続きから実際に[3]の値を取り出してみましょう。
上の図のように"伊藤"の値をとりだすことができたら他の値も確認してみましょう。
現在は
吉田(0) 田所(1) 峰(2) 伊藤(3)
と4つの値が配列の中には入っています。
ここに、新しく 安川(4)という値を追加する場合の方法を2通り解説します。
1つ目は新たに加える番号(箱)に値を代入する方法です。
students[4] = "安川"
studentsという配列の新しい箱(students[4])に安川という値を代入(イコールで結ぶ)ことで値を追加します。
2つ目の方法は番号を使わずにに値の追加のみを指定する方法です。 例えば1つの配列で、値の追加や削除などを繰り返している場合や、配列に既にたくさんの値を代入しているなどの場合、 番号を指定せずに値を追加できる為便利です。
students<<”安川”
と入力すると値が追加されます。
実際にターミナルに入力して値を追加してみましょう。
このチャプターでは繰り返し処理を学びます。
繰り返し処理とは配列の中身(データ)を順番に繰り返すということです。
例えば、1つのニュースの記事(クリップ)に対して10件のコメントがついていた場合を考えてみてください。 commentsという配列(箱)の中には10件のコメント(値)が代入されています。
繰り返し処理を使うことで、配列の中の10件のコメントを順番に繰り返し表示させることができます。
実際にアプリ開発でもよく使う処理なのでこのチャプターで繰り返し処理をマスターしましょう。
実際に配列を作成し、配列の中身を全て表示させてみましょう。
testフォルダに新しく、hairetsu.rbファイルを作成してください。
次にhairetsu.rbファイルに前章で作成したstudenetsという配列を記述して保存しましょう。
これで準備完了です。
繰り返し処理のコードは以下の通りです。
配列.each do |変数|
繰り返したい処理
end
これだけ見るとなんだか難しそうに感じますが、変数と配列をマスターしていれば実は簡単に理解できます。
さきほどの
吉田(0) 田所(1) 峰(2) 伊藤(3) 安川(4)
の配列を例にして解説します。
配列とは複数の値が代入された箱のことでしたね。つまり、students(箱)が配列ということです。
また変数とは1つの値が代入された1つの箱のことでしたね。
つまり、studentsという配列の中にある値それぞれが変数ということになります。
つまり
配列.each do |変数|
の部分は
students.each do |student|
となります。
繰り返したい処理については、今回は「studentsという配列の中の値を全て表示させたい」ということなので、 指定した値を出力する"puts"を使います。
指定するのは配列の中にある変数なので、繰り返したい処理は
puts student
となります。
配列.each do |変数|
繰り返したい処理
end
↓
students.each do |student|
puts student
end
となります。
実際にhairetsu.rbファイルにコードを追加して処理を確認してみましょう。
前章の条件分岐と同様にファイルの中身を実行するコマンド$ ruby ファイル名前を実行します。
ここで注意してほしいのは、ファイルを実行する場合、 必ず実行したいファイルが入っているフォルダに移動してからコマンドを実行するという点です。
この場合、hairetsu.rbファイルはtestフォルダの中にある為、$ cd testでtestフォルダに移動してからコマンドを実行しています。
$ ruby hairetsu.rb
というコマンドを実行すると、hairetsu.rbファイル内の繰り返し処理のコードが実行され、studentsという配列内の全ての値がターミナルに表示されています。
無料ビデオ講座のお知らせ
Skillhub [スキルハブ]では無料の動画講座を多数公開しています。他校だと数万円するような講座が無料で受講できます。