Menu
CoddyTech

Truy cập phần tử trong mảng

Thuộc phần Kiến thức nền tảng trong hành trình Ruby của Coddy. Bài học 59 trên 88.

Mỗi phần tử trong mảng có một vị trí gọi là chỉ số. Trong Ruby, chỉ số bắt đầu từ 0, nghĩa là phần tử đầu tiên ở chỉ số 0, phần tử thứ hai ở chỉ số 1, v.v.

Để truy cập một phần tử (element), hãy dùng dấu ngoặc vuông cùng với chỉ số (index):

fruits = ["apple", "banana", "cherry"]
puts fruits[0]  # In ra: apple
puts fruits[1]  # In ra: banana
puts fruits[2]  # In ra: cherry

Ruby cũng hỗ trợ chỉ số âm, tính từ cuối mảng. Chỉ số -1 chỉ phần tử cuối cùng, -2 chỉ phần tử áp chót, và cứ thế tiếp tục:

colors = ["red", "green", "blue"]
puts colors[-1]  # In ra: blue
puts colors[-2]  # In ra: green

Bạn cũng có thể dùng các phương thức (method) first và last để truy cập nhanh hai đầu của mảng (array):

numbers = [10, 20, 30, 40]
puts numbers.first  # In ra: 10
puts numbers.last   # In ra: 40

Nếu bạn thử truy cập một chỉ số không tồn tại, Ruby trả về nil thay vì báo lỗi:

letters = ["a", "b", "c"]
puts letters[10]  # Đầu ra: (không có gì, nil)
challenge icon

Thử thách

Dễ

Bạn được cung cấp mảng sau:

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

Đọc một số nguyên từ đầu vào, đại diện cho một chỉ số. Truy cập phần tử tại chỉ số đó và in ra.

Dùng chỉ số âm khi đầu vào là số âm. Đầu vào luôn là một chỉ số hợp lệ của mảng này, trong khoảng từ -8 đến 7.

Sau khi in phần tử tại chỉ số đã cho, hãy in phần tử đầu tiên và cuối cùng của mảng trên các dòng riêng biệt bằng phương thức first và last.

Ví dụ, nếu đầu vào là 2, đầu ra sẽ là:

Earth
Mercury
Neptune

Nếu đầu vào là -1, đầu ra sẽ là:

Neptune
Mercury
Neptune

Nếu đầu vào là 4, đầu ra sẽ là:

Jupiter
Mercury
Neptune

Tự làm thử

# Mảng các hành tinh
planets = ["Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"]

# Đọc chỉ số từ đầu vào
index = gets.chomp.to_i

# TODO: Viết code của bạn bên dưới
# 1. Truy cập và in ra phần tử tại chỉ số đã cho
# 2. In ra phần tử đầu tiên bằng phương thức first
# 3. In ra phần tử cuối cùng bằng phương thức last
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Kiến thức nền tảng

Tự luyện tập: Trình biên dịch Ruby online