需要移动外循环的下一次迭代

时间:2015-02-03 09:36:28

标签: ruby

a=[1,2,3,4,5]
b=[100,101,102,103,104]

a.each do |i|
    b.each do |j|
        if j.eql?101
            next            
        end
    end
end

上面循环中的下一个关键字执行内循环的下一个操作,但我确实想执行外循环的下一个操作,我该怎么办?

2 个答案:

答案 0 :(得分:1)

你去吧

a=[1,2,3,4,5]
b=[100,101,102,103,104]

a.each do |i|
  b.each do |j|
    if j.eql? 101
        break
    end
  end
end

答案 1 :(得分:1)

作为break的替代方案,您可以使用take_while

a.each do |i|
  b.take_while { |j| j != 101 }.each do |j|
    # ...
  end
end