- Hands-On Full Stack Development with Go
- Mina Andrawos
- 205字
- 2021-07-02 12:33:32
The switch statement
Now, let's look at the switch statement. Here is what it looks like:
switch x {
case 5:
fmt.Println("5")
case 6:
fmt.Println("6")
default:
fmt.Println("default case")
}
If you haven't noticed already, there is no break keyword. In Go, each case breaks automatically, and doesn't need to be told to do so.
Similar to if statements, you can do an initialization in your switch statement:
switch x := getX();x {
case 5:
fmt.Println("5")
case 6:
fmt.Println("6")
default:
fmt.Println("default case")
}
In Go, a switch statement can act like a group of if else. This gives you the ability to write long if else chains with much nicer code:
switch{
case x == 5:
//do something
case x > 10:
// do something else
default:
//default case
}
In some scenarios, you want your switch cases not to break automatically, and instead fall through to the next case. For this, you can use the fallthrough keyword:
switch{
case x > 5:
//do something
fallthrough
case x > 10:
// do something else. If x is greater than 10, then the first case will execute first, then this case will follow
default:
//default case
}
Following conditional statements, let's take a look at loops.
推薦閱讀
- HornetQ Messaging Developer’s Guide
- Advanced Splunk
- Design Principles for Process:driven Architectures Using Oracle BPM and SOA Suite 12c
- Python程序設計(第3版)
- Hands-On RESTful Web Services with Go
- Julia Cookbook
- Apex Design Patterns
- Reactive Android Programming
- Hands-On Swift 5 Microservices Development
- 名師講壇:Spring實戰開發(Redis+SpringDataJPA+SpringMVC+SpringSecurity)
- 大學計算機基礎實驗指導
- 搞定J2EE:Struts+Spring+Hibernate整合詳解與典型案例
- 大學計算機基礎實驗指導
- Angular Design Patterns
- Building Microservices with Go