返回

Go 语言流程控制:全面指南,掌握循环和条件语句

闲谈

继续我们关于 Go 语言基础知识的探索之旅,今天我们深入研究流程控制的奇妙世界。了解如何使用 for 循环、switch 语句和 if 语句来控制代码流,是掌握 Go 语言的关键一步。让我们潜入其中,探索这些强大的工具,让您的代码更加优雅和高效!

for 循环:重复的力量

在 Go 语言中,for 循环是您唯一的循环结构,但它的强大足以满足您的所有循环需求。它由三个用分号分隔的部分组成:初始化语句、条件语句和后置语句。

for initialization; condition; post {
    // 循环体
}
  • 初始化语句: 在循环开始时执行一次,通常用于设置循环变量。
  • 条件语句: 在每次迭代之前检查,如果为 true,则执行循环体;如果为 false,则退出循环。
  • 后置语句: 在每次迭代之后执行,通常用于更新循环变量或执行其他操作。

switch 语句:多路选择器

当您需要根据多个条件执行不同的代码块时,switch 语句就派上用场了。它类似于其他语言中的 switch-case 结构。

switch expression {
case value1:
    // 执行代码块 1
case value2:
    // 执行代码块 2
...
default:
    // 执行默认代码块(可选)
}
  • 表达式: 要评估的表达式,通常是变量或常量。
  • 值: 要与表达式比较的值。
  • 代码块: 当表达式与给定值匹配时执行的代码块。
  • 默认: 可选的代码块,当表达式不与任何值匹配时执行。

if 语句:条件执行

if 语句是控制代码流的另一个基本构建块。它允许您根据条件执行或跳过代码块。

if condition {
    // 执行代码块
} else {
    // 执行可选的 else 代码块
}
  • 条件: 要评估的布尔表达式,如果为 true,则执行代码块;如果为 false,则跳过。
  • 代码块: 当条件为 true 时执行的代码块。
  • else: 可选的代码块,当条件为 false 时执行。

示例:使用流程控制

为了更好地理解这些概念,让我们看一个示例:

package main

import "fmt"

func main() {
    // for 循环
    for i := 0; i < 5; i++ {
        fmt.Println(i)
    }

    // switch 语句
    switch day := "Sunday"; day {
    case "Saturday", "Sunday":
        fmt.Println("周末了!")
    default:
        fmt.Println("工作日...")
    }

    // if 语句
    if score := 90; score >= 90 {
        fmt.Println("优秀!")
    } else if score >= 80 {
        fmt.Println("良好!")
    } else {
        fmt.Println("需要努力!")
    }
}

输出:

0
1
2
3
4
周末了!
优秀!

结论

通过掌握流程控制,您可以控制 Go 语言代码的执行流,创建更复杂和动态的程序。for 循环、switch 语句和 if 语句是您在 Go 语言编程之旅中不可或缺的工具。运用它们的力量,您将能够创建优雅、可读且高效的代码。