GO语言学习——Go语言基础之流程控制一

Go语言基础之流程控制

if else(分支结构)

package main

import "fmt"

// if条件判断
func main(){
	// age := 19
	// if age > 18 { // 如果 age > 18 执行这个{}中的代码
	// 	fmt.Println("赌场开业")
	// }else { // 否则执行这个{}中的代码
	// 	fmt.Println("写作业")
	// }

	// // 多个判断条件
	// if age > 35{
	// 	fmt.Println("人到中年")
	// }else if age > 18{
	// 	fmt.Println("青年")
	// }else {
	// 	fmt.Println("好好学习")
	// }

	// 作用域
	// age 变量此时只在if条件判断语句中生效
	if age := 19; age > 18 {
		fmt.Println("赌场开业")
	} else {
		fmt.Println("写作业")
	}

	// fmt.Println(age) // 这里找不到age

}

for(循环结构)

for循环的基本格式如下:

for 初始语句;条件表达式;结束语句{
    循环体语句
}

for range(键值循环)

Go语言中可以使用for range遍历数组、切片、字符串、map 及通道(channel)。 通过for range遍历的返回值有以下规律:

  1. 数组、切片、字符串返回索引和值。

  2. map返回键和值。

  3. 通道(channel)只返回通道内的值。

    package main

    import "fmt"

    // for循环

    func main(){
    // 基本格式
    for i := 0;i < 10; i++{
    fmt.Println(i)
    }

     // 变种1
     // var i = 5
     // for  ;i<10;i++{
     // 	fmt.Println(i)
     // }
    
     // 变种2
     // var i = 5
     // for i<10{
     // 	fmt.Println(i)
     // 	i++
     // }
    
     // 无限循环
     // for {
     // 	fmt.Println("123")
     // }
    
     // for range循环
     s := "Hello 中国"
     for i,v := range s{
     	// fmt.Println(i, v)
     	fmt.Printf("%d %c\n", i, v)
     }
    

    }

posted @ 2022-04-20 22:46  寻月隐君  阅读(28)  评论(0编辑  收藏  举报