Go语言 continue语句
Go语言的 continue语句 有点像 break语句。但是 continue 不是跳出循环,而是跳过当前循环执行下一次循环语句。
for 循环中,执行 continue语句会触发 for 增量语句的执行。
在多重循环中,可以用标号 label 标出想 continue 的循环。
1. continue语句的语法
continue 语法格式如下:
continue;
continue语句流程图如下:
2. continue语句的范例
在变量 a 等于 15 的时候跳过本次循环执行下一次循环:
package main import "fmt" func main() { /* 定义局部变量 */ var a int = 10 /* for 循环 */ for a < 20 { if a == 15 { /* 跳过此次循环 */ a = a + 1; continue; } fmt.Printf("a 的值为 : %d\n", a); a++; } }
以上范例执行结果为:
a 的值为 : 10 a 的值为 : 11 a 的值为 : 12 a 的值为 : 13 a 的值为 : 14 a 的值为 : 16 a 的值为 : 17 a 的值为 : 18 a 的值为 : 19
以下范例有多重循环,演示了使用标记和不使用标记的区别:
package main import "fmt" func main() { // 不使用标记 fmt.Println("---- continue ---- ") for i := 1; i <= 3; i++ { fmt.Printf("i: %d\n", i) for i2 := 11; i2 <= 13; i2++ { fmt.Printf("i2: %d\n", i2) continue } } // 使用标记 fmt.Println("---- continue label ----") re: for i := 1; i <= 3; i++ { fmt.Printf("i: %d\n", i) for i2 := 11; i2 <= 13; i2++ { fmt.Printf("i2: %d\n", i2) continue re } } }
以上范例执行结果为:
---- continue ---- i: 1 i2: 11 i2: 12 i2: 13 i: 2 i2: 11 i2: 12 i2: 13 i: 3 i2: 11 i2: 12 i2: 13 ---- continue label ---- i: 1 i2: 11 i: 2 i2: 11 i: 3 i2: 11
Go语言 goto语句:Go语言的goto语句可以无条件地转移到过程中指定的行。goto语句通常与条件语句配合使用。可用来实现条件转移, 构成循环,跳出循环体等功能。但是,在结构化程序设计中一般不主张使用 goto语句,以免造成程序流程的混乱,使理解和调试程序都产生困难。