控制结构是编程语言中的重要组成部分,用于实现程序的逻辑判断和流程控制。在 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 end
until 循环
until
循环与 while
循环相反,它会在条件为假时重复执行代码块。
count = 0 until count == 5 puts "当前计数: #{count}" count += 1 end
for 循环
for
循环通过遍历数组或范围来执行特定的代码块。
fruits = ["apple", "banana", "cherry"] for fruit in fruits puts "我爱 #{fruit}" end
times 方法
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}" end
next
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 end
case 语句
case
语句提供了一种简洁的方式来处理多条件分支的情况。
-- -------------------- ---- ------- --- - -------- ---- --- ---- --------- ---------- ------------ ----------- -------- ---- ----- ---- ----------- -------- ---- ---- ---- ---- ---- ---
通过这些控制结构,Ruby 程序员能够灵活地控制程序的执行流程,满足各种复杂的业务需求。掌握这些基本概念对于任何前端开发者来说都是至关重要的。