golang代码流程控制

代码流程控制,比如c/c++中的for while if switch语句,golang中也有类似的语句

主要控制代码的走向

在golang中也有类似语句:

	//if 语句
	var ok bool = false
	if !ok { //if后直接写判断条件,不用加()
		fmt.Println("say not ok")
	} else { //语法:else 要紧接在}后面,不然编译不过
		fmt.Println("say ok")
	}//输出:say not ok

  

switch语句:

	var str string
	fmt.Scanf("%s\n",&str)
	switch str {
	case "yes":
		fmt.Println("say yes")//break省略,默认执行完成该case后退出
	case "no":
		fmt.Println("say no")
	default:
		fmt.Println("unkonwn")
	}

  一般的,switch和case 后面都可以跟表达式,例如switch a + b {...} ,case 可以是好几个值得集合:case 1,2,3,4:...

  注意:case一般会break省略,默认执行完成该case后退出,如果想要继续匹配后面的case 这可以在case后面添加语句:fallthrough

 

for 循环语句:

	for i:= 0;i< 5;i++{
		fmt.Println("武汉,加油")
	}

  for的条件语句和c、c++类似

写一个死循环吧

	for{
		
	}

 还有之前的for range遍历

golang没有while,do...while语法

但是可以用for实现

for{ //while 的实现
  //do something
...      
}

 do while实现

	//do... while
	var n = 0
	for{
		fmt.Println("你好,武汉")//先执行了内容
		n++
		if n > 4{ //当满足该条件退出,可以看成是do...while
			break
		}

	}

  

 

 

 

posted @ 2020-04-02 16:22  醉深梦始  阅读(179)  评论(0)    收藏  举报