Go语言条件语句、选择语句、循环语句

条件语句

和其他语言类似,条件语句即为 if ,if else 等。
具体有以下表达式:

	a := 2
	b := 3
	if a > b {
		fmt.Printf("具体操作1")
	}

	if a <= b {
		fmt.Printf("具体操作2")
	} else {
		fmt.Printf("具体操作3")
	}
// if 结构
if 布尔表达式 {
}
// if else 结构 
if 布尔表达式 {
	
} else if 布尔表达式 {
	
} else {

}

if 常常用于判断一个err 是否为nil 来判断返回的错误值,比如:

	// 判断读取一个文件是否出错
   	const fileName = "file.txt"
    body, err := ioutil.ReadFile(fileName)
    if err != nil{
        fmt.Println(err)
    }else{
        fmt.Printf("%s\n",body)
    }

选择语句

可能马上就会想到switch语句,没错,就是switch,它分为两种:表达式switch;类型switch

  • 表达式switch
    即对你表达式的结果为true或false来进行case下边语句的执行。
	// 对学生的分数进行等级的判定
	var grade int
	grade = 80
	switch  {
	case grade >= 80:
		fmt.Println("成绩为A")
	case grade >= 70:
		fmt.Println("成绩为B")
	case grade >= 60:
		fmt.Println("成绩为C")
	default:
		fmt.Println("成绩为D")
	}
  • 类型switch
    即对一个变量的值类型进行判断,是int32,还是int64等等。比如对一个接口类型其值所代表数据类型镜像判断,如下:
	var value interface{}
	value = 2
	switch value.(type) {
	case int:
		fmt.Println("int 类型")
	case int32:
		fmt.Println("int32 类型")
	case int64:
		fmt.Println("int64 类型")
	case int8:
		fmt.Println("int8 类型")
	case uint16:
		fmt.Println("uint16 类型")
	default:
		fmt.Println("其他类型")
	}

循环语句

golang中循环语句和其他语句差别不大,用的最多的是循环语句中的range子句,其作用类似于迭代器,可以用来遍历数组,切片中的每一个元素,也可以用来遍历字符串中的每一个字符,还可以用来遍历map中的每一个键值对。

  • 正常使用
	// 遍历数组
	a := []string{"s", "t", "r", "i", "n", "g"}
	for i := 0; i < len(a); i++ {
		fmt.Printf("i = %d , %s\n", i, a[i])
	}
  • range 子句使用
	// 遍历字符串
	b := "string"
	for k, v := range b {
		fmt.Println("k:", k, ", v:", v)
	}

	// 遍历切片
	var c []string
	c = append(c, "y")
	c = append(c, "o")
	c = append(c, "u")
	for k, v := range c {
		fmt.Println("k:", k, ", v:", v)
	}

	// 遍历map
	var m = make(map[string]int)
	m["A"] = 65
	m["B"] = 66
	m["C"] = 67
	for k, v := range m {
		fmt.Println("k:", k, ", v:", v)
	}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值