这个系列的第一篇文章 说了Ruby的安装和运行,也简单的说了下类和对象,第二篇文章 说了变量、数组、数字和运算符。这里则说Ruby中的控制逻辑。 先看条件语句 。 if语句的格式为: if 条件 代码 elseif 条件 代码 else 代码 end Ruby也支持C/C++中的三元运算符: 判断式?代码1:代码2 如果判断式成立则执行代码1,否则执行代码2。 但Ruby的case语句和C/C++的格式差异很大: case 被判断项 when 比较值 then 代码 when 比较值 then 代码 else 代码 end 例如,下面两段代码是等价的,但使用case的代码更加清晰: if var < 60 print "failed/n" elsif var < 70 print "passed/n" elsif var < 80 print "good/n" elsif var < 90 print "great/n" else print "excellent/n" end case var when 0..59 then print "failed/n" when 60..69 then print "passed/n" when 70..79 then print "good/n" when 80..89 then print "great/n" else print "excellent/n" end Ruby提供了比C/C++更为丰富的循环语句 。 while 表达式 # 表达式为true时执行 代码 end until 表达式 # 表达式为false时执行 代码 end for 临时变量 in 集合 代码 end 也可以使用整数的times、upto和downto方法进行循环。下面几个循环是等价的,都会输出数字0到4: i = 0 while i < 5 puts i i += 1 end i = 0 until i >= 5 puts i i += 1 end for i in 0..4 puts i end 5.times { |i| puts i } 0.upto(4) { |i| puts i } 4.downto(0) { |i| puts 4 - i }