如何在Ruby中执行这种for循环?
for(int i=0; i<array.length; i++) {
}
如何在Ruby中执行这种for循环?
for(int i=0; i<array.length; i++) {
}
Answers:
array.each do |element|
element.do_stuff
end
要么
for element in array do
element.do_stuff
end
如果您需要索引,可以使用此:
array.each_with_index do |element,index|
element.do_stuff(index)
end
each
这很棒。但是有时候我只想要一个该死的传统for循环。有时,“ Ruby方式”可能只是令人讨厌。
array.each_index do |i|
...
end
它不是Rubyish,但它是在Ruby中执行for循环的最佳方法
each
,而是each_index
。+1
如果您不需要访问您的array(只是一个简单的for循环),则可以使用upto或each:
取决于:
1.9.3p392 :030 > 2.upto(4) {|i| puts i}
2
3
4
=> 2
每:
1.9.3p392 :031 > (2..4).each {|i| puts i}
2
3
4
=> 2..4