控制结构是编程语言中的重要组成部分,用于实现程序的逻辑判断和流程控制。在 Ruby 中,控制结构包括条件语句、循环语句以及一些特殊的控制流语句。
条件语句
if 语句
if 语句是最基本的条件判断语句,根据给定的条件执行相应的代码块。如果条件为真,则执行 if 后面的代码块;否则跳过该代码块。
age = 20 if age >= 18 puts "成年人" end
unless 语句
unless 语句与 if 语句相反,当条件为假时执行代码块。
age = 16 unless age >= 18 puts "未成年人" end
if-else 语句
if-else 语句允许在条件为真时执行一个代码块,在条件为假时执行另一个代码块。
age = 19 if age >= 18 puts "成年人" else puts "未成年人" end
if-elsif-else 语句
if-elsif-else 语句可以处理多个条件分支,从上到下依次判断每个条件,直到找到第一个为真的条件并执行对应的代码块。
score = 85 if score >= 90 puts "优秀" elsif score >= 70 puts "良好" else puts "及格" end
循环语句
while 循环
while 循环会一直执行其后的代码块,直到指定的条件不再为真。
count = 0
while count < 5
puts "当前计数: #{count}"
count += 1
enduntil 循环
until 循环与 while 循环相反,它会在条件为假时重复执行代码块。
count = 0
until count == 5
puts "当前计数: #{count}"
count += 1
endfor 循环
for 循环通过遍历数组或范围来执行特定的代码块。
fruits = ["apple", "banana", "cherry"]
for fruit in fruits
puts "我爱 #{fruit}"
endtimes 方法
times 方法允许我们基于数字重复执行某段代码。
5.times do |i|
puts "这是第 #{i + 1} 次循环"
end循环控制语句
Ruby 提供了 break, next, 和 redo 语句来控制循环的执行。
break
break 用于立即退出循环。
count = 0
loop do
count += 1
break if count > 5
puts "计数: #{count}"
endnext
next 用于跳过本次循环的剩余部分,并开始下一次循环。
(1..10).each do |num| next if num.even? puts num end
redo
redo 用于重新执行当前循环迭代。
count = 0
loop do
count += 1
puts "计数: #{count}"
redo if count < 3
break
endcase 语句
case 语句提供了一种简洁的方式来处理多条件分支的情况。
// www.javascriptcn.com code example day = "Sunday" case day when "Monday", "Tuesday", "Wednesday", "Thursday", "Friday" puts "工作日" when "Saturday", "Sunday" puts "周末" else puts "未知" end
通过这些控制结构,Ruby 程序员能够灵活地控制程序的执行流程,满足各种复杂的业务需求。掌握这些基本概念对于任何前端开发者来说都是至关重要的。