美文网首页
Go的条件判断语句和跳转关键字break,continue,go

Go的条件判断语句和跳转关键字break,continue,go

作者: Link_Biao | 来源:发表于2017-09-28 00:08 被阅读0次

if判断语句

  • if判断语句的判断条件不用()包裹,可以在判断语句里面初始化判断条件的值
  • 当判断语句的声明变量和局部变量名称一致时候,执行到判断语句中假设变量命名是if1时,局部变量的命名if1会隐藏,等到判断语句执行完再出现
func tempIf(a int) {
    if a > 0 {
        f.Println("if is true")
    } else {
        f.Println("if is false")
    }
}

for判断语句

  • 循环语句只有for,支持三种形式,没有while那些循环语句
  • 初始化和步进表达式可以是多个值
  • 条件每次循环都会被重新检查,因此不建议在条件语句中使用函数,尽量提前计算好条件并以常量或者变量代替
func tempFor(a int) {//常用的循环模式
    for i := 0; i < 10; i++ {
        if a == i {
            f.Println("break")
            break;
        } 
    }
}
func tempFor1(a int) {
    for a!=10{
        f.Println("continue")
    }
}
func tempFor2(a int) {//类似while
    for{
        if a>5{
            f.Println(a)
            break;
        }
    }
}

switch判断语句

  • switch语句可以使用任何类型或表达式做条件语句
    不需要break,一旦条件成立自动终止
  • 如果希望执行下一个case,使用fallthrough语句
    支持一个初始化表达式(可以是并行方式),右侧需跟分号
func tempSwitch(str string) {
    switch str {
    case "1":
        f.Println("str is 1")
        fallthrough//关键字,条件成立,依旧执行下一条case,不管下一条条件是否成立
    case "2":
        f.Println("str is 2")
    case "3":
        f.Println("str is 3")
    }
}
  • 跳转语句,关键字break,goto,continue

  • break,continue关键字作用其实跟java语言的没啥区别,可以跳出或者跳转执行指定的标签,但是在java中goto是保留字段,没有任何意义
  • c++中有标签,但是他的break,和continue不能说指定跳出和继续指定的标签,但是他的goto可以实现这个功能,条件成立,跳转到指定 标签的执行语句中

break关键字

LABLE1:
for {
    for i := 1; i < 10; i++ {
        if i == 4 {
            break LABLE1 //跳出定义了标签层
        }
    }
}
fm.Println("break is over")

goto关键字

for {
    for i := 1; i < 10; i++ {
        if i == 4 {
            goto LABLE2 //调整了执行位置,如果是标签是放在for语句
  //之前,又是重新开始执行
        }
    }
}
LABLE2:
fm.Println("goto is over")

continue关键字

LABLE3:
for i := 1; i < 10; i++ {
    for {
        fm.Print(i)
        continue LABLE3 //继续执行定义了标签层
    }
}
fm.Println("continue is over")

自增符号++和自减符号--

  • 他这个跟java语言的还是有区别的,它是作为一个语句,而不是作为一个表达式,他不能放在变量的左边,只能放在右边,譬如
  • a:=1
    a=a++ 或者 + +a,这样是错误的,
    只能a++,因为他是一个语句,同样道理,自减符号也是一样。

相关文章

网友评论

      本文标题:Go的条件判断语句和跳转关键字break,continue,go

      本文链接:https://www.haomeiwen.com/subject/elgpextx.html