1

我一直在研究learnstreet上的项目,但我有点注意到它们访问数组中元素的方式有些有趣,并希望得到一些澄清。要访问数组中的第一个元素,我知道我可以做类似的事情

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

然而,在 learnstreet 网站上,他们通过执行类似的操作来访问第一个元素

a = [2,4,5,6,7]
a[0,1]
output => 2

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

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

在此处输入图像描述

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

4

2 回答 2

6

这只是获取第一个索引的另一种方式:

a[0, 1]

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

有关更多说明,请参见此处

于 2013-04-17T01:58:08.713 回答
2

抓取n个索引值的最佳方法

一个[0..1]

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

 a[0..1]

output => [2,4] 

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

于 2013-04-17T10:59:23.257 回答