Golang之控制语句

南风古灶 · · 496 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

if条件判断

package main

//if 条件判断
import "fmt"

func main (){
	age := 19
	if age > 18{
		fmt.Printf("澳门线上赌场开业啦")
	}else if age<18 && age>0{
		fmt.Printf("快去上网课吧!!")
    }else{
        fmt.Printf("error!")
    }
}
复制代码

for循环

在Go语言中,只有for循环,没有C语言中的while循环。

  • breakcontinue可以改变控制流,

    break表示从当前循环跳出,结束循环。

    continue表示跳过此次循环,进行下一次循环。

for循环包括两种:

​ 1.类似C语言中的循环

需要注意的是,必须将{与for循环的末尾放在同一行。否则会发生编译错误。

  • for循环普通用法
package main

import "fmt"

func main(){
    //三个语句都可以省略,但需要保留“;”
	for i:=0;i<10;i++{
		for j:=0;j<5;j++{
			fmt.Println(i)
		}
	}
复制代码
  • for可以类似于C语言中的while使用,方法如下:
func for_while(){
    i := 0
    for i<10{
		i++
        fmt.Println(i)
    }
}
复制代码

​ 2.for runge循环

在数据类型的区间(range)上边遍历,比如字符串,或者切片。

通过for range遍历的返回值有以下规律:

  1. 数组、切片、字符串返回索引(数组下标)和值。
  2. map返回键和值。
  3. 通道(channel)只返回通道内的值。
package main

import "fmt"

func main(){
	// for runge循环
	str := "cyz is good"

	for _ ,v := range str{
		fmt.Println(v)
	}
复制代码

switch多路选择

Go语言并不需要显式地在每一个case后写break,语言默认执行完case后的逻辑语句会自动退出。 如果想让之后的语句都执行同一个逻辑。可以自己加fallthrough

switch语句分两种类型

​ a.有对象

package main

import "fmt"

func main (){
	var n = 5
	switch n {
	case 1:fmt.Println("111")
	case 2:fmt.Println("222")
	case 3:fmt.Println("333")
	case 4:fmt.Println("444")
	case 5:fmt.Println("555")
	}

}
复制代码

​ b.无对象

无对象等价于 switch true,然后将每个case表达式之后的值跟true值相比较,例子如下:

package main

import "fmt"

func main (){
	var n = 5
	switch  {
	case n == 1:fmt.Println("111")
	case n == 2:fmt.Println("222")
	case n == 3:fmt.Println("333")
	case n == 4:fmt.Println("444")
	case n == 5:fmt.Println("555")
	}

}
复制代码

有疑问加站长微信联系(非本文作者)

本文来自:掘金

感谢作者:南风古灶

查看原文:Golang之控制语句

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

496 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传