循环遍历数组的元素

chi*_*ief 5 ruby

我想周期@a0通过2:0, 1, 2, 0, 1, 2.

def set_a
  if @a == 2 
    @a = 0
  else
    @a = @a + 1
  end
end
Run Code Online (Sandbox Code Playgroud)

也许有更好的方法?

meg*_*gas 18

(0..2).cycle(3) { |x| puts x } #=> 0,1,2,0,1,2,0,1,2

item = [0, 1, 2].cycle.each

item.next #=> 0
item.next #=> 1
item.next #=> 2
item.next #=> 0
...
Run Code Online (Sandbox Code Playgroud)