Go基础(流程控制语句):开启Go语言之旅

流程控制语句

Go语言和Java特别相似,包括流程控制语句,主要有以下几种:
for、if、else、switch、defer。


一、for

Go 只有一种循环结构:for 循环。
基本的 for 循环由三部分组成,它们用分号隔开:

初始化语句:在第一次迭代前执行
条件表达式:在每次迭代前求值
后置语句:在每次迭代的结尾执行
初始化语句通常为一句短变量声明,该变量声明仅在 for 语句的作用域中可见。

一旦条件表达式的布尔值为 false,循环迭代就会终止。

  • 注意:和 C、Java、JavaScript 之类的语言不同,Go 的 for 语句后面没有小括号,大括号 { } 则是必须的。

1.下面来看一个普通for例子

package main

import "fmt"

/**
 * for后面没有小括号
 * i := 0 这个为初始化语句(在第一次迭代前执行)
 * i < 10 条件表达式(在每次迭代前求值)
 * i++ 后置语句(在每次迭代的结尾执行)
 */
func main() {
    sum := 0
    for i := 0; i <= 10; i++ {
        //下面这个i是指i的初始化值
        //例如i := 9时,i++等于10,sum = 0+1+......+9(注意这里是9而不是10)
        //当i := 10时,i++等于11,sum = 0+1+......+10(注意这里是10而不是11)
        //当i := 11时,就结束了循环
        sum += i
    }
    fmt.Println(sum)
}

输出语句:

55

2. 再来看一个初始化和后置语句可选的例子

初始化语句和后置语句是可选的。

package main

import "fmt"

func main() {
    sum := 1

    //首先sum=1
    //sum = 1 + 1 = 2
    //sum = 2 + 2 = 4
    //sum = 4 + 4 =8
    //sum = 8 + 8 = 16 结束循环
    for ; sum < 10;  {
        sum += sum
        //sum = sum + sum
    }

    fmt.Println(sum)

    //输出结果16
}

二、for 是 Go 中的 “while”

此时你可以去掉分号,因为 C 的 while 在 Go 中叫做 for。
下面来看一个例子

package main

import "fmt"

func main() {

    sum := 1
    //for相当于while
    for 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值