1.9Go语言的条件(Conditional)、循环(Loop)、跳转(Jump)语句

1.if条件

if 表达式 {
    //语句
}

2.if-else条件

if 表达式 {
    //语句1
} else {
    //语句2
}

3.if-else-if条件

if 表达式1 {
    //语句1
} else if 表达式2 {
    //语句2
} else {
    //语句3
}

4.switch条件

switch 语句用于将 switchExpression 按从上往下的顺序与 caseExpression 逐个进行匹配测试,直到 switch 语句结束 或 遇到第一个匹配成功的 caseExpression 并执行此 caseExpression 后的语句。

default 语句非必须有。如果有 default 语句,当 switchExpression 匹配不到任何一个 caseExpression 时,default 语句会被执行,否则不会被执行。一个 switch 语句只能有一个 default 语句。

注意:匹配测试使用的是相等 == 运算符。

注意:caseExpression 后的语句有隐式的 break 语句。

switch switchExpression {
    case caseExpression1:
        //语句1
    case caseExpression2:
        //语句2
    case caseExpressionN:
        //语句N
    default:
        //语句
}

5.for循环

for 语句的运行顺序为:第一步先计算 条件表达式,如果 条件表达式true,则运行后面的 块语句,然后运行 每次迭代后表达式,依次类推,直至 条件表达式false

for 初始表达式; 条件表达式; 每次迭代后表达式 {
    //语句
}
//类似于其它编程语言的while语句
for 条件表达式 {
    //语句
}

6.for-range循环

for-range 语句用于迭代任何可迭代数据(比如整数、字符串、数组、切片、映射等)中的元素。

for 变量名 := range 可迭代数据 {
    //语句
}

for 键, 值 := range 可迭代数据 {
    //语句
}

7.label跳转

label 语句用于给任何语句加 label

label 可以是 Go 语言支持的任何标识符。

label 语句一般与 gotobreakcontinue 语句搭配使用。

label: 语句

8.goto跳转

goto 语句用于跳转到 label 语句。

goto label

9.break跳转

一旦遇到 break 语句,则立即跳出(break out of)最近的 switch 语句 或 循环语句,并从最近的 switch 语句 或 循环语句外继续向下执行。

break

一旦遇到 break label 语句,则立即跳出(break out of) label 语句,并从 label 语句外继续向下执行。

break label

10.continue跳转

一旦遇到 continue 语句,则立即终止最近的循环语句的本次迭代,继续(continue)最近的循环语句的下一次迭代,并不会完全终止最近的循环语句。

continue

一旦遇到 continue label 语句,则立即终止带 label 的循环语句的本次迭代,继续(continue)带 label 的循环语句的下一次迭代,并不会完全终止带 label 的循环语句。

continue label

11.return跳转

一旦遇到 return 语句,包含 return 关键字的函数就会立即停止执行,并将 return 关键字后的表达式的值返回给包含 return 关键字的函数的调用者。

注意:return 关键字只可以被使用在函数体内。

return
return 表达式
return 表达式1, 表达式2, 表达式N

如果一个函数定义没有返回类型,则此函数的函数体内不应该有 return 语句 或者 return 关键字后没有表达式。

func f1() {
}

func f2() {
    return
}

func main() {
    fmt.Println(f1())  // 报错
    fmt.Println(f2())  // 报错
}

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/go/golang/36912.html

(0)
huoxiaoqiang的头像huoxiaoqiang
上一篇 2025年2月8日 20:59
下一篇 2025年2月9日 14:51

相关推荐

发表回复

登录后才能评论