Go语言学习之——for

for的条件不需要括号
条件中初始条件,结束条件和递增表达式都可以省略。
1、简单示例

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

2、省略初始条件

package main
​
import (
    "strconv"
    "fmt"
)
​
//十进制转二进制,输出是字符串
func convertToBin( n int ) string{
    var r string = ""
    if n == 0{
        return "0"
    }
    //省略初始条件
    for ; n != 0; n /= 2{
        lsb := n % 2
        r = strconv.Itoa(lsb) + r //strconv.Itoa()数字转成字符串
    }
​
    return r
}
​
func main() {
    fmt.Println(
        convertToBin(3),
        convertToBin(19),
        convertToBin(100),
        convertToBin(0),
    )
}

3、没有初始条件和递增条件,只有结束条件,相当于while

package main
​
import (
    "fmt"
    "os"
    "bufio"
)
​
func printFile( fileName string){
    file, err := os.Open(fileName)
    if err != nil{
        panic(err)
    }
​
    scanner := bufio.NewScanner(file)
    //没有初始条件和递增条件
    for scanner.Scan(){
        fmt.Println(scanner.Text())
    }
}
​
func main() {
    printFile("test.txt")
}

4、也可以初始条件、递增条件和结束条件都没有,死循环

你可能感兴趣的:(Go语言学习之——for)