将指针沿数组移动n次

时间:2013-10-09 11:02:14

标签: ruby

我想通过一个数组的两个索引。沿着这些方向的东西

iterate_amount = 2
array = [2,4,6,7]

iterate_amount.times do |x|
    puts x
end #=> 2,4

我只是不知道如何在循环中放置'数组'来告诉解释器这是我要通过两个索引移动的数组。

2 个答案:

答案 0 :(得分:4)

您可以使用Enumerable#cycle

array = [2,4,6,7]
array.cycle(2) do |x|
  puts x
end

打印

2
4
6
7
2
4
6
7

<强>更新

使用Array#[]指定开始,长度或指定范围。

>> array[0, 2]
=> [2, 4]
>> array[0..1]
=> [2, 4]
>> array[0...2]
=> [2, 4]

答案 1 :(得分:1)

使用Array#take http://ruby-doc.org/core-2.0.0/Array.html#method-i-take

>> a = [2,4,6,7]
=> [2, 4, 6, 7]
>> a.take 2
=> [2, 4]