【问题标题】:How to create an integer-for-loop in Ruby?如何在 Ruby 中创建整数循环?
【发布时间】:2011-07-19 05:33:51
【问题描述】:

在我看来,我有一个变量“x”。我需要显示一些代码“x”的次数。

我基本上想设置这样的循环:

for i = 1 to x
  do something on (i)
end

有没有办法做到这一点?

【问题讨论】:

    标签: ruby for-loop


    【解决方案1】:

    如果您在 erb 视图中执行此操作(对于 Rails),请注意 <%<%= 的区别。你想要的是:

    <% (1..x).each do |i| %>
      Code to display using <%= stuff %> that you want to display    
    <% end %>
    

    对于纯Ruby,可以参考:http://www.tutorialspoint.com/ruby/ruby_loops.htm

    【讨论】:

      【解决方案2】:
      x.times do |i|
          something(i+1)
      end
      

      【讨论】:

      • 这是 Rails 的方式
      • 第一次迭代将是 i=0。正如 OP 所要求的,本示例中的 i+1 有效地导致基于 1 的迭代。
      【解决方案3】:
      for i in 0..max
         puts "Value of local variable is #{i}"
      end
      

      All Ruby loops

      【讨论】:

      • 虽然其他解决方案有效,但这是最正确的答案,因为它使用了 for 循环。
      • 这是在 Ruby 中执行 FOR LOOP 的更好解决方案
      【解决方案4】:

      您可以在 1 到 `x´ 的范围内执行简单的 each 循环:

      (1..x).each do |i|
        #...
      end
      

      【讨论】:

        【解决方案5】:

        尝试以下简单的 Ruby 魔法:)

        (1..x).each { |n| puts n }
        x.times { |n| puts n }
        1.upto(x) { |n| print n }
        

        【讨论】:

          猜你喜欢
          • 2020-09-16
          • 1970-01-01
          • 2022-01-14
          • 2019-08-25
          • 2014-06-19
          • 2019-09-23
          • 1970-01-01
          • 1970-01-01
          • 2017-06-29
          相关资源
          最近更新 更多