原文地址:http://blog.csdn.net/zhu_xz/article/details/4916215
这个系列的第一篇文章 说了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 }
完