在Ruby 1.8.5中是否有等效的Array#each_slice()?

sun*_*dar 2 ruby ruby-1.8

我正在使用ruby 1.8.5,并且each_slice()数组的方法不起作用.

我的代码是这样的:

array.each_slice(3) do |name,age,sex|   .....   end
Run Code Online (Sandbox Code Playgroud)

有没有其他方法可以在我的旧版本的ruby中实现相同的功能.

ste*_*lag 5

烤自己:

module Enumerable
  def each_slice( n )
    res = []
    self.each do |el|
      res << el
      if res.size == n then
        yield res.dup
        res.clear
      end
    end
    yield res.dup unless res.empty?
  end
end
Run Code Online (Sandbox Code Playgroud)