Ruby 数组(Array)


Ruby 数组(Array)

Ruby 中的数组是由多个数据元素组成的集合,这些元素可以是任何类型的对象,例如整数、字符串、布尔值或其他对象。数组还支持一些有用的方法,例如排序和搜索。

创建数组

可以用一对方括号来定义一个数组,方括号中的元素用逗号分隔。例如:

numbers = [1, 2, 3, 4, 5]

还可以使用 Array.new 方法来创建数组,指定数组长度并且提供规定好的初始元素值。例如:

zeros = Array.new(5, 0)

以上代码可以创建出包含5个初始值为0的元素的数组。

访问数组元素

数组是由一系列编号的元素组成的,这些元素可以通过 index 索引值进行访问。数组的第一个元素的索引值是0,第二个是 1,以此类推。

my_array = [1, 2, 3, 4, 5]
puts my_array[0] # 打印数组中的第一个元素(1)

还可以使用负数索引来从后向前访问元素:

my_array = [1, 2, 3, 4, 5]
puts my_array[-1] # 打印数组中的最后一个元素(5)

操作数组

数组提供了许多有用的方法来操作和修改数组。

添加元素

my_array = [1, 2, 3, 4, 5]

# push 方法在数组的末尾添加一个元素
my_array.push(6)
puts my_array # [1, 2, 3, 4, 5, 6]

# unshift 方法在数组的开头添加一个元素
my_array.unshift(0)
puts my_array # [0, 1, 2, 3, 4, 5, 6]

删除元素

my_array = [1, 2, 3, 4, 5]

# pop 方法删除数组的最后一个元素
my_array.pop
puts my_array # [1, 2, 3, 4]

# shift 方法删除数组的第一个元素
my_array.shift
puts my_array # [2, 3, 4]

替换元素

my_array = [1, 2, 3, 4, 5]

# 使用 []= 运算符通过索引替换数组中的元素
my_array[0] = 0
puts my_array # [0, 2, 3, 4, 5]

数组排序

my_array = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]

# 使用 sort 方法对数组进行排序
my_array.sort!
puts my_array # [1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]

更多数组操作可以参考 Ruby 文档

循环遍历数组

可以使用 Ruby 的 each 方法迭代数组中的元素。

my_array = [1, 2, 3, 4, 5]

# 使用 each 方法遍历数组中的每一个元素
my_array.each do |x|
  puts x
end

以上代码将按顺序打印数组中的每个元素。

总结

Ruby 数组是集合类型的对象,由多个元素组成。可以用方括号或 Array.new 方法来创建数组,并可以使用索引访问、添加、删除和替换数组元素,还可以使用 Ruby 的 each 方法遍历数组中的元素。需要注意的是,Ruby 中的数组是可变的。