为了账号安全,请及时绑定邮箱和手机立即绑定

go基础语法-循环语句

标签:
Go

1.基础定义

for语句的条件不需要括号(同if语句) ,golang里的循环只有for,没有while

sum := 0for i=0;i<100;i++ {
    sum += i
}

2.条件省略

for语句的条件可以省略初始条件,结束条件,递增表达式

省略初始条件,相当于while

sum,i := 0,0for ;i<100;i++ {
    sum += i
}

省略初始条件和递增表达式

file,err := os.Open("a.txt")if  err != nil {
    panic(err)
}
scanner := bufio.NewScanner(file)
for scanner.Scan() {    fmt.Println(scanner.Text())
}

省略结束条件,死循环

sum := 0for i=0;;i++ {
    sum += i
}

全部省略,"快速"死循环,方便并发编程时gorutine互相死循环调用的代码编写

for {
    fmt.Println("哈")
}

测试代码

package mainimport (    "bufio"
    "fmt"
    "os"
    "strconv")/*
常规循环
 */func normal() {
    sum := 0
    for i := 0; i < 100; i++ {
        sum += i
    }
    fmt.Println(sum)
}/*
省略初始条件
函数:十进制转二进制
 */func convertToBin(n int) string {
    res := ""
    for ; n > 0; n /= 2 {
        tmp := n % 2
        res = strconv.Itoa(tmp) + res
    }    return res
}/*
省略初始条件和递增表达式
函数:逐行输出文件内容
 */func printFile(filePath string) {
    file, err := os.Open(filePath)    if err != nil {
        panic(err)
    }
    scanner := bufio.NewScanner(file)    for scanner.Scan() {
        fmt.Println(scanner.Text())
    }
}/*
"快速"死循环
 */func happy() {    for {
        fmt.Println("哈")
    }
}func main() {
    normal()
    fmt.Println(convertToBin(3))
    printFile("a.txt")    //happy()}

原文出处:https://www.cnblogs.com/lz120792/p/9563248.html

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消