访问ruby数组中的元素

时间:2013-04-17 01:55:00

标签: ruby arrays

我一直在讨论learnstreet上的项目,但我有点注意到他们访问数组中元素的方式,并希望得到一些澄清。 要访问数组中的第一个元素,我知道我可以执行类似

的操作
a = [2,4,5,6,7]
a[0] 
output=> 2

然而,在learnstreet网站上,他们通过执行类似

的操作来访问第一个元素
a = [2,4,5,6,7]
a[0,1]
output => 2

我的猜测可能是他们正在使用旧版本的ruby,需要你这样做。如果我错了,请纠正我,我只是好奇为什么这样做。

实际上为了验证这一点,我更进了一步并在pry中尝试了但是我注意到使用他们的方法只返回了数组的第一个元素。

enter image description here

我的ruby版本=> ruby 1.9.3p327(2012-11-10修订版37606)[x86_64-darwin12.2.0]

2 个答案:

答案 0 :(得分:6)

这只是抓住第一个索引的另一种方式:

a[0, 1]

从0索引开始,抓住一片长度为1。这对于获取数组的“块”或“切片”很有用。通常,当仅涉及阵列的某个项时,使用单个索引版本更清楚。即a[0]

有关详细说明,请参阅here

答案 1 :(得分:2)

最好抓取n个索引值

一个[0..1]

它会将0索引返回索引1 例如: - a = [2,4,5,6,7]

 a[0..1]

output => [2,4] 

它会整洁干净但它会返回数组中的值而不是字符串。