一、if分支语句

if 布尔表达式 1 {
/* 在布尔表达式 1 为 true 时执行 */
}
if a := ; a% ==  {
fmt.Println("偶数")
}
 if 布尔表达式 1 {
/* 在布尔表达式 1 为 true 时执行 */
}else{
  /* todo else */
}
    if a := ; a% ==  {
fmt.Println("偶数")
} else {
fmt.Println("奇数")
}
if 布尔表达式 1 {
/* 在布尔表达式 1 为 true 时执行 */
}else if 布尔表达式 2{   /* 在布尔表达式 1 为 true 时执行 */
}else{  /* todo else */  }
func main() {
var b =
if b >= {
fmt.Println("优秀")
} else if b >= {
fmt.Println("良好")
} else {
fmt.Println("及格")
}
}

二、for循环语句

func main() {
//=======格式1===========
for i := ; i < ; i++ {
fmt.Println("i=", i)
}
//=======格式2===========
a :=
for ; a < ; a++ {
fmt.Println("a=", a)
}
//=======格式3(死循环)====
b :=
for {
if b == {
break
}
b--
fmt.Println("b=", b)
} }

break 语句用于在完成正常执行之前,突然终止 for 循环。

func main() {
//=======格式1===========
for i := ; i < ; i++ {
if i >= {
break
}
fmt.Println("i=", i)
}
}
输出:i= 0;i= 1;i= 2;i= 3;i= 4

continue 语句用来跳出 for 循环中当前循环。在 continue 语句后的所有的 for 循环语句都不会在本次循环中执行。循环体会在一下次循环中继续执行

func main() {
for i := ; i < ; i++ {
if i == {
continue
}
fmt.Println("i=", i)
}
}
输出:i= 0;i= 1;i= 2;i= 4

goto 语句类似 continue  终止当前循环,进入指定的位置(Loop)继续运行
func main() {
num :=
Loop:
for num < {
num++
if num% == {
goto Loop
}
fmt.Println("i=", num)
}
}

三、swich分支语句

go语言中的switch语句默认每个case 都有break,这与java语言略有不同

func main() {
//=========== 格式一 ===========
switch finger := ; finger {
case :
fmt.Println("")
case :
fmt.Println("")
case :
fmt.Println("")
default:
fmt.Println("")
}
//===========case后可以多个条件===========
letter := "i"
switch letter {
case "a", "e", "i", "o", "u": // 一个选项多个表达式
fmt.Println("hello")
default:
fmt.Println("word")
}
//在 switch 语句中,表达式是可选的,可以被省略。如果省略表达式,则表示这个 switch 语句等同于 switch true
num :=
switch { // 表达式被省略了
case num >= && num <= :
fmt.Println("num is greater than 0 and less than 50")
case num >= && num <= :
fmt.Println("num is greater than 51 and less than 100")
case num >= :
fmt.Println("num is greater than 100")
}
}

fallthrough语句:在 Go 中,每执行完一个 case 后,会从 switch 语句中跳出来,不再做后续 case 的判断和执行。使用 fallthrough 语句可以在已经执行完成的 case 之后,把控制权转移到下一个 case 的执行代码中。类似于java 中case之后不写break

func main() {
//=========== 格式一 ===========
switch finger := ; finger {
case :
fmt.Println("")
case :
fmt.Println("")
case :
fmt.Println("")
fallthrough
default:
fmt.Println("")
}
}

GO基础之流程控制语句的更多相关文章

  1. java基础3_流程控制语句

    一 条件判断 1. 条件运算符(三元表达式) ,其形式为: type d = a ? b : c; 具体化形式为:int d = 2 < 1 ? 3 : 4; 2. 轻量级的文本编辑器:Ultr ...

  2. 再回首,Java温故知新(九):Java基础之流程控制语句

    流程控制语句分为条件语句.循环语句和中断语句. 中断语句包括break和continue,两者的区别在于break会跳出整个循环,而continue则是跳出此次循环,之后还会继续下一次循环. 条件语句 ...

  3. java基础,流程控制语句

                                流程控制语句 条件语句:              if语句:                        *if(条件 boolean类型) ...

  4. JavaSE基础篇—流程控制语句

    本章知识点分析: 流程控制语句 1.定义:流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定功能的小逻辑模块.流程控 制方式采用结构化程序设计中规定的三种基本流程机构:顺序结 ...

  5. Java基础学习-流程控制语句

    在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的.也就是说程序的流程对运行结果有直接的影响.所以,我们必须清楚每条语句的执行流程.而且,很多时候我们要通过控制语句的执行顺序来实现我 ...

  6. JavaScript基础之流程控制语句

    第三部分:流程控制语句 JavaScript代码是书写位置: JavaScript代码应该写在<script type=”text/javascript”></script>这 ...

  7. python基础(二) —— 流程控制语句

    编程语言中的流程控制语句分为以下几类: 顺序语句 分支语句 循环语句 其中顺序语句不需要单独的关键字来控制,就是按照先后顺序一行一行的执行,不需要特殊的说明. 下面主要是 分支语句 和 循环语句的说明 ...

  8. java基础(5):流程控制语句(switch)、数组

    1. 流程控制语句(续) 1.1 选择结构switch switch 条件语句也是一种很常用的选择语句,它和if条件语句不同,它只能针对某个表达式的值作出判断,从而决定程序执行哪一段代码.例如,在程序 ...

  9. JS基础_流程控制语句

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  10. Java基础语法—流程控制语句

    在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的.所以,我们必须清楚每条语句的执行流程.而且,很多时候要通过控制语句的执行顺序来实现我们想要的功能. 3.1 流程控制语句分类 ​ ...

随机推荐

  1. Python3.7.4入门-3函数

    3 函数 3.1 定义函数 def fib(n): # write Fibonacci series up to n """Print a Fibonacci serie ...

  2. Tomcat 报错 The APR based Apache Tomcat Native library which allows optimal performance in production environmen

    这个问题在我一次重新装了tomcat和myeclipse时出现 说实话 出现这个问题头大 但是好在解决了 美滋滋 最开始到处寻找各种解决方案 最后直接注释了server.xml中的一行 直接解决这个报 ...

  3. 环境搭建-CentOS集群搭建

    环境搭建-CentOS集群搭建 写在前面 最近有许多小伙伴问我,大数据的hadoop分布式集群该如何去搭建.所以,想着,就写一篇博客,帮助到更多刚入门大数据的人.本博客会一步一步带你实现一个Hadoo ...

  4. Multiple types were found that match the controller named 'Auth'.

    偶然的一个机会,修改了已经开发完毕的一个项目的命名.突然运行发现: { "Message": "An error has occurred.", "E ...

  5. Spring 梳理-@Controller

    @Controller是一个构造性注解(stereotype),它基于@Component 在自动扫描中,组件扫描器会自动将@Controller申明的类注册为Spring应用上下文的一个bean 可 ...

  6. Spring MVC-从零开始-view-直接返回页面不传data

    1.applicationContext配置 <?xml version="1.0" encoding="UTF-8"?> <beans xm ...

  7. GetThreadTimes获取其它线程cpu时间

    http://www.cnblogs.com/eaglet/archive/2009/03/11/1408809.html 鄙视下上面的垃圾博文,纯粹忽悠人 参考文章: http://blog.kal ...

  8. asp.net core 使用Mysql和Dapper

    序曲:学习编程最好的方式就是敲代码,没有比这个更好的方法,哪怕你看了上百G的视频,都不如你自己敲几行代码更为有效.还有要记得敲完代码然后写一篇随笔来记录一下你所学所想. 大家都知道,.netcore是 ...

  9. 架构——android架构演进概述

    随着业务的发展和技术的变更,Android开发也经历了以下几个发展阶段: 看似高大上的名词,其实遵循着最简单的原则:分而治之(如何划分就是"架构",简单的事情如何串在一起就是&qu ...

  10. Windows Terminal 安装及美化

    windows terminal 是今年微软Build大会上推出的一款的全新终端,用来代替cmder之类的第三方终端.具有亚克力透明.多标签.Unicode支持(中文,Emoji).自带等宽字体等这些 ...