在Ruby中迭代数组的“正确”方法是什么?

尽管PHP有很多缺点,但在这方面还是相当不错的。数组和散列之间没有区别(也许我很幼稚,但这对我来说显然是正确的),而迭代这两种方法都可以

foreach(数组/哈希为$key=>$value)

在Ruby中,有很多方法可以实现这类功能:

array.length.times do|i|
终止
数组。每个
数组。每个索引
对于数组中的i

散列更有意义,因为我总是使用

散列。每个do |键、值|

为什么我不能对阵列执行此操作?如果我只想记住一种方法,我想我可以使用每个索引(因为它使索引和值都可用),但是必须执行数组[index]而不是只使用,这很烦人


哦,对了,我忘了数组。每个数组都有索引。但是,这个很糟糕,因为它是| value,key |散列。每个都是| key,value |!这不是疯了吗

这将遍历所有元素:

数组=[1,2,3,4,5,6]
array.each{| x | put x}

印刷品:

1
2.
3.
4.
5.
6.

这将遍历提供值和索引的所有元素:

数组=[“A”、“B”、“C”]
array.each_与_index{val,index}一起放置“#{val}=>#{index}”

印刷品:

A=>0
B=>1.
C=>2.

从你的问题来看,我不太确定你在找哪一个

发表评论