📅  最后修改于: 2023-12-03 14:39:20.896000             🧑  作者: Mango
在 Ruby 中,数组是一个可变长度、可以存储任意类型元素的数据结构。本文将深入介绍 Ruby 中的数组。
可以使用 []
或 Array.new
创建一个空数组,并使用索引添加元素。
[] # []
Array.new # []
a = [] # []
a[0] = 1 # [1]
a[1] = "two" # [1, "two"]
可以使用数组字面量创建包含初始元素的数组。
[1, 2, 3] # [1, 2, 3]
[1..3] # [1..3]
[*1..3] # [1, 2, 3]
可以使用索引访问指定位置的元素。
a = [0, 1, 2, 3]
a[0] # 0
a[-1] # 3
a[10] # nil
a.fetch(10, "unknown") # "unknown"
访问数组的首个元素和末尾元素。
a = [0, 1, 2, 3]
a.first # 0
a.last # 3
a.first(2) # [0, 1]
a.last(2) # [2, 3]
可以使用 each
遍历数组。
a = [0, 1, 2, 3]
a.each { |i| puts i } # 0
# 1
# 2
# 3
可以使用 +
连接两个数组。
a = [0, 1, 2]
b = [3, 4, 5]
a + b # [0, 1, 2, 3, 4, 5]
可以使用 *
复制数组。
a = [0, 1, 2]
a * 3 # [0, 1, 2, 0, 1, 2, 0, 1, 2]
可以使用 <<
在末尾添加元素。
a = [0, 1, 2]
a << 3 # [0, 1, 2, 3]
a.push(4) # [0, 1, 2, 3, 4]
可以使用 pop
在末尾删除元素。
a = [0, 1, 2, 3, 4]
a.pop # 4
a # [0, 1, 2, 3]
可以使用 shift
在开头删除元素。
a = [0, 1, 2, 3, 4]
a.shift # 0
a # [1, 2, 3, 4]
可以使用 unshift
在开头添加元素。
a = [1, 2, 3]
a.unshift(0) # [0, 1, 2, 3]
可以使用 reverse
反转数组。
a = [0, 1, 2, 3, 4]
a.reverse # [4, 3, 2, 1, 0]
可以使用 sort
对数组进行排序。
a = [4, 2, 0, 3, 1]
a.sort # [0, 1, 2, 3, 4]
可以使用 join
将数组转换为字符串。
a = [0, 1, 2, 3, 4]
a.join(", ") # "0, 1, 2, 3, 4"
可以使用 to_a
将哈希表转换为数组。
h = { "a" => 1, "b" => 2 }
h.to_a # [["a", 1], ["b", 2]]
在本文中,我们学习了如何创建和操作 Ruby 数组。数组是 Ruby 的一个非常有用的数据结构,具有许多强大的功能。我们鼓励您多多尝试使用它们,并以此提高您的 Ruby 技能!