Skip to content

Day 03 - 流程控制语句 ​

📖 今日目标 ​

  1. 掌握if条件语句
  2. 掌握for循环
  3. 掌握switch语句

核心概念 ​

if语句 ​

go
if x > 10 {
    fmt.Println("大于10")
} else if x > 5 {
    fmt.Println("大于5")
} else {
    fmt.Println("小于等于5")
}

for循环 ​

go
// 经典for
for i := 0; i < 10; i++ {
    fmt.Println(i)
}

// 省略初始值和递增
i := 0
for i < 10 {
    fmt.Println(i)
    i++
}

// 死循环
for {
    // 无限循环
    break
}

// range遍历
for index, value := range slice {
    fmt.Println(index, value)
}

switch语句 ​

go
switch day {
case 1, 2, 3, 4, 5:
    fmt.Println("工作日")
case 6, 7:
    fmt.Println("周末")
default:
    fmt.Println("无效")
}

关键要点 ​

1. 条件表达式不需要括号 ​

Go的if、for条件不需要括号:

go
if x > 0 {  // 不需要 (x > 0)
    // ...
}

2. switch不需要break ​

Go的switch默认不穿透,使用fallthrough穿透:

go
switch num {
case 1:
    fmt.Println("1")
    fallthrough  // 继续执行case 2
case 2:
    fmt.Println("2")
}

3. 无while循环 ​

Go没有while,用for代替:

go
for condition {
    // 等同于while
}

面试考点 ​

问题:Go的switch和Java有什么区别? ​

答案:

  1. Go switch不需要break,默认不穿透
  2. Go switch case可以是任意表达式
  3. Go没有switch标签,可以省略条件

实践思考 ​

🎯 思考题:

用for循环计算1-100的和。


📅 学习进度 ​

Day主题状态
01-02基础语法✅
03流程控制语句✅
04函数与方法⬜
.........

本文为Go 30天学习计划第3天内容 ​

📚 导航 ​

| ← Day 02 - 上一章 | Day 04 - 下一章 →

最后更新: