1.基础定义

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

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

2.条件省略

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

省略初始条件,相当于while

sum,i := 0,0
for ;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 := 0
for i=0;;i++ {
sum += i
}

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

for {
fmt.Println("哈")
}

测试代码

package main
import (
"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()
}

go基础语法-循环语句的更多相关文章

  1. JS基础语法---循环语句之:for 循环 + 9个练习

    for循环 语法: for(表达式1;表达式2;表达式3){ 循环体; } 执行过程: 先执行一次表达式1,然后判断表达式2;如果不成立则直接跳出循环 如果表达式2成立,执行循环体的代码,结束后,跳到 ...

  2. VBS基础篇 - 循环语句(3) - For...Next

    VBS基础篇 - 循环语句(3) - For...Next   指定循环次数,使用计数器重复运行语句,语法结构如下: 1 2 3 4 5 For counter = start To end [Ste ...

  3. VBS基础篇 - 循环语句(4) - For Each...Next

    VBS基础篇 - 循环语句(4) - For Each...Next   For Each...Next 循环与 For...Next 循环类似.For Each...Next 不是将语句运行指定的次 ...

  4. 基础语法-循环结构for

    基础语法-循环结构for 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.for循环格式 for(初始化表达式;循环条件表达式;循环后的操作表达式){ 执行语句(循环体); } ...

  5. 基础语法-循环结构do...while

    基础语法-循环结构do...while 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.do...while语句格式 do{ 执行语句; }while(条件表达式); 温馨提示: ...

  6. 基础语法-循环结构while

    基础语法-循环结构while 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.while语句格式 while(条件表达式){ 执行语句; } 二.while语句案例 /** * ...

  7. JavaSE入门学习7:Java基础语法之语句(下)

    继续接着Java基础语法来:JavaSE入门学习5:Java基础语法(一)和JavaSE入门学习6:Java基础语法(二). 语句 Java经常使用的3种循环:while.do...while,for ...

  8. Java基础之循环语句、条件语句、switch case 语句

    Java 循环结构 - for, while 及 do...while 顺序结构的程序语句只能被执行一次.如果您想要同样的操作执行多次,,就需要使用循环结构. Java中有三种主要的循环结构: whi ...

  9. 9.12 开课第9天 (JS脚本语音:基础语法、语句)

    全称JavaScript    网页里面使用的脚本语音      非常强大的语言 基础语法:1.注释语法   单行注释//    多行注释/**/ 2.输出语法   alert(信息);  弹出信息  ...

随机推荐

  1. JAVA读取HDFS信息

    uri填路径 public static void main(String[] args) throws IOException { String uri = "/user/WeiboAD/ ...

  2. Webpack笔记(一)——从这里入门Webpack

    准备了挺久,一直想要好好深入了解一下Webpack,之前一直嫌弃Webpack麻烦,偏向于Parcel这种零配置的模块打包工具一些,但是实际上还是Webpack比较靠谱,并且Webpack功能更加强大 ...

  3. 如何选择PHP项目的开发方案?

    我说的项目开发方案并不是谈论到底用不用PHP去开发的问题,而是当你遇到一个项目,已经决定了用PHP,然后才来看的问题:用PHP的什么开发方案. 基本上有这么几种方案.各有各的说法,良莠不齐,我就谈谈我 ...

  4. TCP/IP模型 & 5层参考模型

    OSl参考模型与TCP/IP参考模型相同点: 1.都分层 2.基于独立的协议栈的概念 3.可以实现异构网络互联

  5. mysql学习之join用法

    转载  一张图看懂 SQL 的各种 join 用法 一.JOIN 使用介绍 下面例子使用的数据表如下: -- ---------------------------- -- Table structu ...

  6. PAT——1010. 一元多项式求导

    设计函数求一元多项式的导数.(注:xn(n为整数)的一阶导数为n*xn-1.) 输入格式:以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过1000的整数).数字间以空格分隔. 输出格式:以与 ...

  7. linux c 获取当前时间 毫秒级的 unix网络编程

    #include <time.h> #inlcude <sys/time.h> char *gf_time(void) /* get the time */{ struct t ...

  8. MVC验证码生成类库

    public class ValidateCode { /// <summary> /// 验证码的最大长度 /// </summary> public int MaxLeng ...

  9. 过滤xss攻击脚本

    <?php /** * @blog http://www.phpddt.com * @param $string * @param $low 安全别级低 */ function clean_xs ...

  10. 学习笔记(2)centos7 下安装mysql

    centos7安装mysql 本文通过yum方式安装mysql 1.添加mysql yum 仓库 去mysql开发者中心(http://dev.mysql.com/downloads/repo/yum ...