概述
for循环是一个循环控制结构,可以执行指定次数的循环
语法
第一种
1
|
for {} //无线循环
|
第二种
1
|
for 条件语句{}
|
第三种
1
|
for 初始语句; 条件语句; 迭代后语句 {}
|
第四种
1
|
for key,value:=range 表达式/变量{}
|
注意
省略初始条件,相当于while循环体必须用 { } 括起来初始化语句和后置语句是可选的如果只剩下条件表达式了,那么那两个分号也是可以省略的
示例一 死循环,读取文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
func readFile() {
//需要导入 bufio、io、os包
f, err := os.Open("abc.txt")
if err != nil {
fmt.Println("open error")
return
}
defer f.Close()
br := bufio.NewReader(f)
for {
s, _, c := br.ReadLine()
if c == io.EOF {
break
}
fmt.Println(string(s))
}
}
|
示例二 打印乘法表
1
2
3
4
5
6
|
for i := 1; i < 10; i++ {
for j := 1; j <= i; j++ {
fmt.Printf("%dx%d=%d ", j, i, i*j)
}
fmt.Println("")
}
|
示例三 遍历字符串,数组,map
1
2
3
4
5
|
//只能打印英文字母,不能对汉字友好
var str = "Hello world!"
for i := 0; i < len(str); i++ {
fmt.Printf("str[%d]=%c\n", i, str[i])
}
|
1
2
3
4
5
6
|
//需要借助rune进行转换,rune相当于其他语言的char
var str = "Hello 北京"
str2 := []rune(str)
for i := 0; i < len(str2); i++ {
fmt.Printf("str[%d]=%c\n", i, str2[i])
}
|
以上就是Go语言基础for循环语句的用法及示例详解的详细内容,更多关于Go语言for循环语句的资料请关注服务器之家其它相关文章!
原文链接:https://blog.csdn.net/guofeng93/article/details/90804430