Ruby新手 – 在IRB中循环问题

所以几天前我决定尝试学习Ruby,实际上它已经很顺利了。 我一直忙于在IRB中徘徊,直到我找到一个非常重要的程序来编码来测试我的知识。

然而,今天我遇到了一个关于While循环的意外问题,我希望你们都可以帮我解决这个问题:

irb(main):001:0> i = 0 => 0 irb(main):002:0> while (i  i++ irb(main):004:1* end SyntaxError: (irb):4: syntax error, unexpected keyword_end from C:/WINDOWS/Ruby/bin/irb:12:in `' 

为什么这不起作用,因为我期待它? 根据这个网站我的结构是正确的,所以我在这里缺少什么?

我在Windows XP下运行Ruby 1.9.2,如果有任何帮助的话。

i++不是有效的ruby。 你需要做i += 1

编辑:请参阅Mladen关于解析器看到的内容的评论。

除非你的目的是专门理解while循环和整数加法/比较是如何工作的,否则你真正想要的是

 1000.times do |i| end 

Ruby没有C风格的增量( ++ )或减量( -- )运算符。 你要这个:

 i = 0 while(i < 1000) i = i + 1 end