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 - 下一章 →

最后更新: