Go入门之控制语句(上)

329 阅读2分钟

「这是我参与11月更文挑战的第9天,活动详情查看:2021最后一次更文挑战

写在前面👀

今天主要讲Go的控制语句😁

一、递增递减语句🎈

  1. 在Go语言中自增++和自减--是单独语句,并不属于运算符。
  2. 在Go语言中它只能放在变量后面,放前面会报错。
a++      //和a=a+1等价
a--     //和a=a-1等价

image.png

二、if条件语句🎃

  1. 在Go语言中表达式值为true才能做大括号里的事情,不像C语言中只要为非零值就行。表达式值为false则执行下一条语句。
  2. 代码块左括号必须在条件表达式尾部,elseelse if语句也要紧跟在右括号右边。
  3. 表达式可以省略小括号
  4. 条件语句支持 if 的局部初始化
  5. Go语言中没有简写三元运算符
if 布尔表达式1 {
	分支1
  } else if 布尔表达式2 {
	分支2
  } else {
	分支3
  }
package main

import "fmt"
import "math/rand"

func main() {
        //局部初始化,产生一个随机数并赋值给a
	if a := rand.Int(); a > 1 {    
		fmt.Println("a大于1")
	} else if a == 1 {
		fmt.Println("a等于1")
	} else {
		fmt.Println("a小于1")
	}

}

三、swich选择语句🎄

  • switch 语句用于基于不同条件执行不同动作,每一个 case 分支都是唯一的,从上直下逐一测试,直到匹配为止,如果匹配到了会自动退出,不像C语言会继续执行接下的case语句。条件比较多时,可以用swich代替else if
  1. 在Go语言中,case语句末尾可省略break,编译器会默认自动停止
  2. case 的比较值可以用逗号 , 分隔
  3. 如果在执行完每个分支的代码后,还希望继续执行后续分支的代码,可以使用 fallthrough 关键字来达到目的。
  4.  default (也可以不用这个语句)分支可以出现在任何顺序,但最好将它放在最后。它的作用类似与 if-else 语句中的 else,表示不符合任何已给出条件时,执行相关语句。
  5. switch后的var1可局部初始话
//变量 var1 可以是任何类型,而 val1 和 val2 则可以是同类型的任意值
switch var1 {
    case val1,val2,val3:
        ...
    case val4:
        ...
    default:
        ...
}
package main

import "fmt"
import "math/rand"

func main() {

	switch i := rand.Int(); {
	case i < 100:
		fmt.Println("Perfect!")

	case i > 80:
		fmt.Println("Good!")

	case i > 60:
		fmt.Println("OK!")
	default:
		fmt.Println("Bad!")

	}
}

写在后面

感谢观看✨
如有不足,欢迎指出🎏