普通の配列
colors =["white", "black", "red", "green", "blue"]
colorsという配列の中に、5つの要素が入っています。
先頭から順番に0、1、2、3…とインデックス番号が割り当てられています。
※1、2、3…ではないので注意!
出力する際は、
puts colors[2]
とすると、3番目のredが取り出せます。
配列の中に配列
animals = [["tuna", "octopus", "shark"], ["dog", "cat", "pig"], ["crow", "swan", "eagle"]]
こんな感じのやつです。
animalsという配列の中に、海の動物、陸の動物、空の動物をそれぞれ3種類ずつ入れた配列が入っています。
中身を全てまとめて出力する
puts animals
↓
<出力結果>
tuna
octopus
shark
dog
cat
pig
crow
swan
eagle
海の動物だけを出力する
海の動物は0というインデックス番号が割り当てられています。
puts animals[0]
↓
<出力結果>
tuna
octopus
shark
タコだけを出力する
インデックス番号0という海の動物の中で、
さらにインデックス番号1が割り当てられています。
puts animals[0][1]
↓
<出力結果>
octopus
指定して全て出力したもの
=> は出力されたものを表しています。
puts animals[0][0]
=> tuna
puts animals[0][1]
=> octopus
puts animals[0][2]
=> shark
puts animals[1][0]
=> dog
puts animals[1][1]
=> cat
puts animals[1][2]
=> pig
puts animals[2][0]
=> crow
puts animals[2][1]
=> swan
puts animals[2][2]
=> eagle
さらに複雑な配列
構造が複雑になっても、同じような感じで取り出すことができます。
countries = [["Japan", "America"], [["Brazil", "Russia"],["China", "India"]]]
countriesという配列の中に2つの配列があり、
2つ目の配列の中にはさらにもう1つの配列が入っています。
puts countries[0]
↓
<出力結果>
Japan
America
puts countries[1]
↓
<出力結果>
Brazil
Russia
China
India
puts countries[1][0]
↓
<出力結果>
Brazil
Russia
指定して全て出力したもの
puts countries[0][0]
=> Japan
puts countries[0][1]
=> America
puts countries[1][0][0]
=> Brazil
puts countries[1][0][1]
=> Russia
puts countries[1][1][0]
=> China
puts countries[1][1][1]
=> India
ここからさらに四重とかになったとしても、同様の記述で値を取り出せます。