数组中的双索引数(Ruby)

数组中的双索引数(Ruby),ruby,Ruby,数组计数如下所示: counts = ["a", 1] 这意味着什么: counts[0][0] 指什么 我以前只见过这个: array[idx] 但决不能这样: array[idx][idx] 其中idx是一个整数 这是之前的代码片段来自的完整代码: def num_repeats(string)#abab 计数=[]#数组 str_idx=0 而str_idx

数组计数如下所示:

counts = ["a", 1]
这意味着什么:

counts[0][0]
指什么

我以前只见过这个:

array[idx] 
但决不能这样:

array[idx][idx] 
其中idx是一个整数

这是之前的代码片段来自的完整代码:

def num_repeats(string)#abab
计数=[]#数组
str_idx=0
而str_idx1
重复次数+=1
终止
计数\u idx+=1
终止
返回计数
终止
声明

arr[0]
获取数组的第一项
arr
,在某些情况下,这也可能是一个数组(或另一个可索引对象)。这意味着您可以获取该对象并从该数组中获取对象:

# if arr = [["item", "another"], "last"]
item = arr[0]
inner_item = item[0]
puts inner_item # => "item"
这可以缩短为

arr[0][0]
因此,任何二维数组或包含可索引对象的数组都可以这样工作,例如,使用字符串数组:

arr = ["String 1", "Geoff", "things"]
arr[0] # => "String 1"
arr[0][0] # => "S"
arr[1][0] # => "G"

它是用于嵌套索引的

a = [ "item 0", [1, 2, 3] ]
a[0] #=> "item 0"
a[1] #=> [1, 2, 3]
a[1][0] #=> 1
由于索引1处的值是另一个数组,因此也可以对该值使用索引引用

编辑

对不起,我没有仔细阅读原始问题。所讨论的数组是

counts = ["a", 1]
在这种情况下,
计数[0]
返回
“a”
,因为我们可以使用索引引用字符串的字符,所以字符串
“a”
中的第0个索引就是
“a”


举一个字符串的例子(也许是更长的字符串),因为OP就是这样做的。@SergioTulentsev如果你是对的,我误解了原来的问题,以为他在处理嵌套数组。不管怎样,我已经更正了我的答案。提示:你知道
foo[bar]
做什么吗?你知道foo.bar.baz是做什么的吗?那么,
foo[bar][baz]
有什么作用呢?不知道你在说什么。你能解释一下吗。
counts = ["a", 1]
str = "hello"
str[2] #=> "l"
str[1] #=> "e"