Ruby数组是有序的,任何对象的整数索引的集合。每个数组中的元素相关联,并提取到的一个索引。下标与C或Java相似,从0开始。负数索引假设数组末尾,也就是说-1表示最后一个元素的数组索引,-2是数组中最后一个元素的下一个元素等等。
Ruby的数组可以容纳对象,如字符串,整数,长整数,哈希,符号,甚至其他Array对象。Ruby数组没有像在其他语言数组一样严格。Ruby数组自动增长,同时增加元素。
创建数组
有许多方法来创建或初始化一个数组,一种是new方法:
names = Array.new
早创建时可以设置一个数组的大小
names = Array.new(20)
数组names现在有20个元素的大小/长度。您可以返回用数组属性size或length来获取数组长度
可以指定一个数组汇总的每个元素值
names = Array.new(4,"mac")
这样创建的数组中每个元素都是mac字符串
还可以使用new块,块会计算并填充每个元素:
nums = Array.new(10){ |e| e = e*2 }
这样创建的数组元素为:0,2,4,6,8,10,12,14,16,18
还有另一种方法,语法如下
nums = Array.[]{1,2,3,4}
或:
nums = Array[1,2,3,4]
内核模块Ruby的核心,有一个数组的方法,只接受一个参数,这里的方法范围内创建一个数组的数组作为参数
digits = Array(0..9)
这样创建的结果为:0,1,2,3,4,5,6,7,8,9
数组内置的方法
以上面创建的数组对象为例:
取某个索引的元素:
num = digits.at(3)
#num = 3