Go for循环

package main

import (
    "fmt"
    "strconv"
    "os"
    "bufio"
)

func convertToBin(n int) string {
    result := ""
    // 省略起始条件 相当于 while
    for ; n > 0; n /= 2 {
        lsb := n % 2
        result =  strconv.Itoa(lsb) + result
    }
    return  result
}

func printFile(filename string)  {
    file, err := os.Open(filename)
    if err != nil {
        // 报错
        panic(err)
    }

    scanner := bufio.NewScanner(file)

    // 省略起始条件、递增条件 相当于 while
    for scanner.Scan() {
        fmt.Println(scanner.Text())
    }
}

func forever()  {
    // 死循环
    for  {
        fmt.Println("abc.txt")
    }
}

// 基础语法要点回顾

// for if 后面的条件没有括号
// if条件里面也可以定义变量
// 没有while(被for包括)
// switch需要break 也可以直接switch多个条件 可以不需要表达式

func main() {
    fmt.Println(
        convertToBin(5),  // 101
        convertToBin(13), // 1101
        )

    printFile("abc.txt")

    //forever()
}

你可能感兴趣的:(Go for循环)