Menu
Coddy logo textTech

配列の要素へのアクセス

CoddyのRubyジャーニー「基礎」セクションの一部 — レッスン 59/88。

配列の各要素には、インデックスと呼ばれる位置があります。Rubyでは、インデックスは0から始まります。つまり、最初の要素はインデックス0、2番目の要素はインデックス1、といった具合になります。

要素にアクセスするには、インデックスを指定した角括弧を使用します。

fruits = ["apple", "banana", "cherry"]
puts fruits[0]  # 出力: apple
puts fruits[1]  # 出力: banana
puts fruits[2]  # 出力: cherry

Rubyは、配列の末尾から数える負のインデックスもサポートしています。インデックス-1は最後の要素を、-2は最後から2番目の要素を指し、以下同様です:

colors = ["red", "green", "blue"]
puts colors[-1]  # 出力: blue
puts colors[-2]  # 出力: green

また、firstおよびlastメソッドを使用して、配列の端に素早くアクセスすることもできます:

numbers = [10, 20, 30, 40]
puts numbers.first  # 出力: 10
puts numbers.last   # 出力: 40

存在しないインデックスにアクセスしようとすると、Rubyはエラーを発生させる代わりに nil を返します:

letters = ["a", "b", "c"]
puts letters[10]  # 出力: (何もなし - nil)
challenge icon

チャレンジ

簡単

以下の配列が用意されています:

planets = ["Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"]

入力からインデックスを表す1つの整数を読み取ります。そのインデックスにある要素にアクセスし、それを表示してください。

入力が負の場合は、負のインデックスを使用してください。入力は常にこの配列の有効なインデックス(-8から7の間)になります。

指定されたインデックスの要素を表示した後、firstメソッドとlastメソッドを使用して、配列の最初と最後の要素をそれぞれ別の行に表示してください。

例えば、入力が 2 の場合、出力は以下のようになります:

Earth
Mercury
Neptune

入力が -1 の場合、出力は以下のようになります:

Neptune
Mercury
Neptune

入力が 4 の場合、出力は以下のようになります:

Jupiter
Mercury
Neptune

チートシート

配列の要素には、0から始まるインデックスを使用してアクセスします:

fruits = ["apple", "banana", "cherry"]
puts fruits[0]  # 出力: apple
puts fruits[1]  # 出力: banana
puts fruits[2]  # 出力: cherry

負のインデックスは配列の末尾から数えます(-1は最後の要素です):

colors = ["red", "green", "blue"]
puts colors[-1]  # 出力: blue
puts colors[-2]  # 出力: green

最初と最後の要素にアクセスするには、firstメソッドとlastメソッドを使用します:

numbers = [10, 20, 30, 40]
puts numbers.first  # 出力: 10
puts numbers.last   # 出力: 40

存在しないインデックスにアクセスすると、nilが返されます:

letters = ["a", "b", "c"]
puts letters[10]  # 出力: (なし - nil)

自分で試してみよう

# 惑星の配列
planets = ["Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"]

# 入力からインデックスを読み込む
index = gets.chomp.to_i

# TODO: 以下にコードを記述してください
# 1. 指定されたインデックスの要素にアクセスして表示する
# 2. firstメソッドを使用して最初の要素を表示する
# 3. lastメソッドを使用して最後の要素を表示する
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン