Go语言流程控制中的break,continue和goto(七)

break(跳出循环)

break用于跳出整个循环,如下:

func main() {
    for i:=0;i<10;i++{
        if i>3{
            break
        }
        fmt.Println(i)
    }
}

// 0 1 2 3

代码里只会打印到3,当大于3时会跳出整个for循环,注意整个for循环指的是直接包含break的那层for循环,举个例子:

func main() {
    for i:=0;i<10;i++{
        for j:=0;j<10;j++ {
            if j == 5 {
                break
            }
            fmt.Printf("%v-%v\n",i, j)
        }
    }
}

查看上述代码的结果,就会发现内层循环只能打印到4,而外层循环可以到9(即走完了整个for循环)。

除此之外,我们还可以使用标签来退出指定循环。改造上面的双层循环代码,如下:

func main() {
    EX:
    for i:=0;i<10;i++{
        for j:=0;j<10;j++ {
            if j == 5 {
                break EX
            }
            fmt.Printf("%v-%v\n",i, j)
        }
    }
}

我在最外层for循环上面加一个 EX 标签,然后 break EX,此时的结果就是当j==5时,从最外面的for循环退出来了。为了对比,可以再试下:

func main() {
    for i:=0;i<10;i++{
        EX:
        for j:=0;j<10;j++ {
            if j == 5 {
                break EX
            }
            fmt.Printf("%v-%v\n",i, j)
        }
    }
}

其实这种写法跟不加标签是一样的效果,上面也说到了,break是退出当前包含它的循环的。

continue(继续下一次循环)

continue 是继续下一次的循环,与 break 的区别就是不跳出整个循环,只跳过此次循环:

func main() {
    for i:=0;i<10;i++{
        if i==5{
            continue
        }
        fmt.Println(i)
    }
}

// 跳过了5,继续后面的循环
// 0 1 2 3 4 6 7 8 9

continue 也支持标签写法:

func main() {
    EX:
    for i:=0;i<10;i++{
        for j:=0;j<10;j++ {
            if j == 5 {
                continue EX
            }
            fmt.Printf("%v-%v\n",i, j)
        }
    }
}

goto(跳转到指定标签)

goto是个好东西,它可以跳转到我们指定的标签,从而执行那部分代码,例子:

func main() {
    for i:=0;i<10;i++{
        for j:=0;j<10;j++ {
            if j == 5 {
                goto breakTag
            }
            fmt.Printf("%v-%v\n",i, j)
        }
        breakTag:
            break
    }
}

如上代码,当 j==5 时,使用goto跳转到breakTag标签处,而这个标签下执行了break(注意break位置),从而使得最外层的for循环中断,是不是很好用。

原文地址:https://www.cnblogs.com/wjaaron/p/11496696.html

时间: 2024-08-03 16:27:31

Go语言流程控制中的break,continue和goto(七)的相关文章

[java学习笔记]java语言基础概述之转义字符&amp;break&amp;continue

1.转义字符 \t:制表符 \n:回车 \b:退格 \r:回车 \":双引号 \\:反斜线(常用于文件路径的书写中)   windows系统中回车符其实是由两个符号组成的,\r\n linux系统中回车符是\n 2.break&continue break(跳出)语句:应用范围是选择结构(switch语句)和循环结构 continue(继续)语句:应用于循环结构 注意: 这两个语句离开应用范围是没有意义的,编译会报错. 这两个语句单独存在下面都不可以有语句,因为执行不到.一般使用if判断

五.php语言结构(3)break continue

break 与continue 学习目标:break与continue之间 区别,注意观察其打印值. <?PHP // break continue for($i=1;$i<=10;$i++){ if($i==4){ continue; } echo $i;         //打印:1235678910 分析:这个continue 只打印到3, 4不打印,跳过,然后再打以后的数字. } echo '<br/>'; for($i=1;$i<=10;$i++){ if($i==

C#中break,continue,return,,goto,throw的区别(转--未整理完)

break 语句用于终止最近的封闭循环或它所在的switch 语句. 控制传递给终止语句后面的语句(如果有的话). /// <summary> /// break 示例 /// 在此例中,条件语句包含一个应该从 1 计数到 100 的计数器 /// 但 break 语句在计数达到 4 后终止循环. /// </summary> static void Main() { for (int i = 1; i <= 100; i++) { if (i == 5) { break;

[第三节] Python流程控制语句 - if, while, for, break, continue

目录: 一. 条件判断语句 - if 二. 循环语句 - while & for 三. break & continue语句. 四. 练习题 正文: 一, 条件判断语句 - if: 1) 第一种语法: if 条件:      代码块 2) 第二种语法: if 条件:      内容一     内容二  else:     内容三      内容四 3) 第三种语法: if 条件1:      代码块  elif 条件2:      代码块  elif 条件3:      代码块  else

JAVA之旅(二)——if,switch,for,while,do while,语句嵌套,流程控制break , continue ,函数,重载的示例总结

JAVA之旅(二)--if,switch,for,while,do while,语句嵌套,流程控制break , continue ,函数,重载的示例总结 JAVA的思想真的很重要,所以要专心的学--献给刚入门的小程序员们 一.语句 一般语句也就三个类型 判断语句 if 选择语句 switch 循环语句 for 当然,还有其他的 我们这里一个一个来讲 1.if if,如果,就是判断,if(条件){} //公共的 类 类名 public class HelloJJAVA { // 公共的 静态 无

Go语言流程控制

目录 顺序控制 分支控制 switch 循环控制 for break continue goto 在程序中,程序运行的流程控制决定程序是如何执行的,是我们必须掌握的,主要有三大流程控制语句. 顺序控制 分支控制 循环控制 顺序控制 程序从上到下逐行的执行,中间没有任何判断和跳转. 分支控制 让程序有选择的执行,分支控制有三种: (1)单分支 if 条件表达式 { //执行代码块 } (2)双分支 if 条件表达式 { //执行代码块 } else { //执行代码块 } (3)多分支 if 条件

跳转语句 break;continue; return; goto 区别用法

C语言是按顺序执行语句的语言——一个接一个.即使它有条件语句或循环语句,程序的流程也是自上而下的.没有顺序流的随机跳转或跳转.但我们的程序是为了满足任何现实世界的需求,一个接一个地执行永远不会很直接.在某些情况下,我们必须偏离代码的正常顺序流,必须跳转到下一个语句集执行.这可以通过使用break.continue和goto语句来实现. Break语句用于在没有任何条件的情况下停止代码的正常执行,它将跳出当前执行循环.我们可以使用条件来检查是否必须中断,但这些条件不是break语句的一部分.我们可

Python break continue pass语句day06

Python break 语句 Python break语句,就像在C语言中,打破了最小封闭for或while循环. break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句. break语句用在while和for循环中. 如果您使用嵌套循环,break语句将停止执行最深层的循环,并开始执行下一行代码. Python语言 break 语句语法: break 实例: #!/usr/bin/python for letter in 'Python':

linux 循环结构中的 break continue exit return区别

1 概述 在脚本的循环中,需要用到break,continue,exit.来控制循环.利用return来获取函数的返回值.本文将对这四个命令的使用做介绍 break [N]:提前结束第N层循环,最内层为第1层 continue [N]:提前结束第N层的本轮循环,而直接进入下一轮判断:最内层为第1层 exit 命令终止脚本 2  break continue exit   对比 2.1 break 和continue 测试 假设一个循环体内,总共嵌套了3层循环,总循环体N为3,break 和con