class Array
 def eachn(n)
  i = 0
  while i < self.size
   yield self[i,i+n]
   i += n
  end
 end
end
v=[]
[1,2,3,4,5,6].eachn(3){ |i,j,k|
 v << [i,j,k]
}
p v
v=[]
[1,2,3,4,5,6].eachn(2){ |i,j|
 v << [i,j]
}
p v
実行結果
>>[[1, 2, 3], [4, 5, 6]]
>>[[1, 2], [3, 4], [5, 6]]
今日思いつきで、こんなコードを書いてみた。
でも、毎回イテレータ書くのマンドクサイので、標準の機能であったら教えて。