go判断语句
if else 和其他语言没什么区别 条件不用加括号,加括号也不会报错 编码风格 fmt.Println("请输入你的年龄") var age uint8 fmt.Scanln(&age)

go判断语句

发布时间:2023-10-06 (2023-10-06)

if else

和其他语言没什么区别

  1. 条件不用加括号,加括号也不会报错
  2. 编码风格
fmt.Println("请输入你的年龄")
var age uint8
fmt.Scanln(&age)
if age < 13 {
  fmt.Println("年龄小于13")
} else {
  fmt.Println("年龄大于13")
}

需要注意的是,if后面的左大括号,必须和if在同一行

这种语法是不被编译通过的

var age uint8 = 12
if age < 13 
{
  fmt.Println("年龄小于13")
}

if else if

fmt.Println("请输入你的年龄")
var age uint8
fmt.Scanln(&age)
if age < 13 {
  fmt.Println("年龄小于13")
} else if age < 25 {
  fmt.Println("年龄小于25")
} else {
  fmt.Println("年龄大于25")
}

if简短语句

在进行判断的之前,可以声明变量,用于接收函数返回值并判断

if i:=3;i>0{
    fmt.Println("大于0")
}

switch case

可以直接将if else改写为switch case

fmt.Println("请输入你的年龄")
var age uint8
fmt.Scanln(&age)
switch {
  case age < 13:
    fmt.Println("年龄小于13")
    fallthrough
  case age < 25:
    fmt.Println("年龄小于25")
  default:
    fmt.Println("年龄大于25")
}

fallthrough是用于case穿透

break是退出当前switch,默认每个case后都有break

第二种用法

fmt.Println("请输入星期(数字)")
var weekDay uint8
fmt.Scanln(&weekDay)
switch weekDay {
case 1:
  fmt.Println("酱油拌饭")
case 2:
  fmt.Println("蛋炒饭")
case 3:
  fmt.Println("阳春面")
default:
  fmt.Println("西北风")
}

和if else的区别

if else是多个条件选一个,只要成立了一个,后面的就都不会去匹配了

switch的每一个case是从上到下去匹配,如果没有break,则每一个都会去匹配