代码之家  ›  专栏  ›  技术社区  ›  nfm

从数组[n]迭代到数组[n-1]的“Ruby方式”是什么?

  •  6
  • nfm  · 技术社区  · 15 年前

    size 5我想以一个索引(从0到4)作为输入,从提供的索引开始遍历数组。

    例如,如果给定的索引是3,我想这样迭代:

    arr[3]
    arr[4]
    arr[0]
    arr[1]
    arr[2]
    

    红宝石路

    3 回复  |  直到 15 年前
        1
  •  14
  •   Nakilon earlonrails    15 年前

    你可以用 Array#rotate

     [4,3,6,7,8].rotate(2).each{|i|print i}
    
     67843
    
        2
  •  1
  •   Shadwell    15 年前

    这个

    arr.size.times do |i|
      puts arr.at((3 + i).modulo(arr.size))
    end
    
        3
  •  0
  •   jordinl    15 年前

    如果你的指数是i:

    (arr.from(i) + arr[0,i]).each