05.循环
for循环
- for 的条件里不需要括号
- for 的条件里可以省略初始条件,结束条件,递增表达式
将整数转换为字符串:
package main import ( "fmt" "strconv" ) func convertToBin(n int) string { //将整数转换为二进制 result := "" for ; n > 0; n /= 2 { lsb := n % 2 result = strconv.Itoa(lsb) + result } return result } func main() { fmt.Println( convertToBin(5), //101 convertToBin(13), //10 ) }
运行结果:
使用 for 循环读取文件
package main import ( "bufio" "fmt" "os" "strconv" ) 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 main() { printFile("test.txt") forver() }
运行结果:
省略结束条件的情况(会死循环)
func forver() { for { fmt.Println("abc") } }
运行结果: