在一次两个索引上迭代+1

时间:2016-02-20 19:43:14

标签: arrays ruby loops

在Ruby中,给定这个数组

[0,1,2,3,4,5]

我如何制作

> 0, 1
> 1, 2
> 2, 3
> 3, 4
> 4, 5

2 个答案:

答案 0 :(得分:3)

[0,1,2,3,4,5].each_cons(2){|a| puts a.join(", ")}

答案 1 :(得分:3)

each_cons肯定,但另一种方式:

enum = [0,1,2,3,4,5].to_enum
loop do
  puts "#{enum.next}, #{enum.peek}"
end
0, 1
1, 2
2, 3
3, 4
4, 5

请参阅Kernel#to_enumKernel#loop。请注意,所有Kernel实例方法的文档都显示在Object,而Kernel模块方法则记录在Kernel