<分区>
Ruby 支持 for i in a
语法,但没有人真正使用它。 Ruby 的设计原则之一是它的可读性,我发现
for i in a
...
end
比
更具可读性(也更容易输入)a.each do |i|
...
end
为什么不推荐?其他人不也觉得它更具可读性吗?是否出于一致性原因,例如与 each_with_index
和变量作用域等其他函数的关系?
<分区>
Ruby 支持 for i in a
语法,但没有人真正使用它。 Ruby 的设计原则之一是它的可读性,我发现
for i in a
...
end
比
更具可读性(也更容易输入)a.each do |i|
...
end
为什么不推荐?其他人不也觉得它更具可读性吗?是否出于一致性原因,例如与 each_with_index
和变量作用域等其他函数的关系?
最佳答案
对我来说,这是统一的语法。当我要对数组 a
做一些事情时,我只是开始输入 a.
。我要做什么?筛选? a.select
;确定尺寸? a.size
。迭代? a.each
等
迭代数组没什么特别的,不需要特殊的语言结构。此外,没有直接 block 的 each
会生成枚举器,它可以与其他方法链接。
然后,Ruby 确实有一个很好的 for i in a
循环。因此,如果您更习惯使用 for 循环:无论如何,请使用 for 循环。
关于ruby - 为什么 `for i in a` 不是惯用的 Ruby?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30592835/