GO入门(八)控制语句

一、判断语句 if

  1. 条件表达式没有括号,左大括号必须和条件语句或者else语句在同一行
if 条件 {
  //内容
} else {
  //内容
}
  1. 支持一个初始化的表达式,初始化语句中的变量为块级别,并且会隐藏外部同名的变量
    a := 1
    if a := -1; a < 0 {
        fmt.Println("if 内:",a)
    }
    fmt.Println("if 外",a)

结果:

if 内: -1
if 外: 1

二、循环语句 for

在go语言中循环语句只有 for一个
示例 1 不带条件

    i := 5
    for{
        i--
        if(i <0){
            break
        }
        fmt.Println("in :",i)
    }
    fmt.Println("out:",i)

输出

in : 4
in : 3
in : 2
in : 1
in : 0
out: -1

示例 2 带条件

    i := 5
    for i > 0 {
        i--
        fmt.Println("in :",i)
    }
    fmt.Println("out:",i)

输出

in : 4
in : 3
in : 2
in : 1
in : 0
out: 0

示例 3 经典的for循环

    for i := 0; i < 5; i++ {
        fmt.Println("in :",i)
    }

输出

in : 0
in : 1
in : 2
in : 3
in : 4

三、选择语句 switch

  • 可以使用任何类型作为条件语句
  • 不需要写break,默认每次执行完一个case自动终止,如果希望继续执行下一个case则在上一个case的末尾加上fallthrough关键字即可
  • 同样,左大括号也是和条件语句必须在一行
    i := 3
    switch i {
    case 3:
        fmt.Println("hello ")
        fallthrough
    case 4:
        fmt.Println("world ")
    default:
        fmt.Println(i)
    }
    i := 3
    switch {
    case i < 4:
        fmt.Println("hello ")
        fallthrough
    case 4 == 4:
        fmt.Println("world ")
    case i > 8:
        fmt.Println("world ")
    default:
        fmt.Println(i)
    }

四、跳转语句

break,continue和java语言类似,然后还多出了goto,用来调整程序的执行顺序

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容