概述
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