循环遍历Ruby中的数组部分

时间:2011-12-20 10:13:34

标签: ruby arrays

我有一个包含大量内容的数组

 Names = ["one", "two", ......."forty"]

现在,我想循环遍历数组的各个部分。例如,从记录10到20,我该如何解决这个问题?

我试过这种方法 -

Names.each_with_index do |val,index| 
   break if index == 10
   puts "#{val}"
end 

通过这种方式,我可以打印前十条记录。我该怎样做才能获得下一组10个名字?

感谢任何帮助。 干杯!

2 个答案:

答案 0 :(得分:5)

您可以使用each_slice来获取数组的连续部分。例如:

require 'enumerator'
Names.each_slice(10) do |slice|
  slice.each do |x|
    puts x
  end

  puts "----"
end

答案 1 :(得分:2)

你可以,例如使用each_slice方法:

Names.each_slice(10) {|part|
    puts part
}