小白教程

 找回密码
 立即注册

Go语言的循环语句

发布者: 小白教程

Go 语言提供了以下几种类型循环处理语句:

循环类型描述
for 循环重复执行语句块
循环嵌套在 for 循环中嵌套一个或多个 for 循环

#循环控制语句

循环控制语句可以控制循环体内语句的执行过程。

GO 语言支持以下几种循环控制语句

循环类型描述
break 语句经常用于中断当前 for 循环或跳出 switch 语句
continue 语句跳过当前循环的剩余语句,然后继续进行下一轮循环
goto 语句将控制转移到被标记的语句

#1 for(循环结构)

#Go 语言中的所有循环类型均可以使用for关键字来完成。

#for循环的基本格式如下:

for 初始语句;条件表达式;结束语句{
    循环体语句
}
复制
1
2
3

#条件表达式返回true时循环体不停地进行循环,直到条件表达式返回false时自动退出循环。

func forDemo() {
	for i := 0; i < 10; i++ {
		fmt.Println(i)
	}
}
复制
1
2
3
4
5

#for循环的初始语句可以被忽略,但是初始语句后的分号必须要写,例如:

func forDemo2() {
	i := 0
	for ; i < 10; i++ {
		fmt.Println(i)
	}
}
复制
1
2
3
4
5
6

#for循环的初始语句和结束语句都可以省略,例如:

func forDemo3() {
	i := 0
	for i < 10 {
		fmt.Println(i)
		i++
	}
}

复制
1
2
3
4
5
6
7
8

这种写法类似于java中的while,在while后添加一个条件表达式,满足条件表达式时持续循环,否则结束循环。

#2 无限循环

for循环可以通过break、goto、return、panic语句强制退出循环。

for {
    循环体语句
}
复制
1
2
3

#3 for range(键值循环)

Go语言中range类似迭代器或者其他语句foreach,可以使用for range遍历数组、切片、字符串、map 及通道(channel)。 通过for range遍历的返回值有以下规律:

  • 数组、切片、字符串返回索引和值。
  • map返回键和值。
  • 通道(channel)只返回通道内的值。
# 需要索引i的写法
for key, val := range coll {
    ...
}
# 只需要循环的内容 类似于java增强for循环
for _, val := range coll {
    ...
}
复制
1
2
3
4
5
6
7
8

需要要注意的是,val 始终为集合中对应索引的值拷贝,因此它一般只具有只读性质,对它所做的任何修改都不会影响到集合中原有的值。一个字符串是 Unicode 编码的字符(或称之为 rune )集合,因此也可以用它来迭代字符串:

for pos, char := range str {
    ...
}
复制
1
2
3

#for循环九九乘法表练习

//九九乘法表
	fmt.Println("九九乘法表如下:")
	for i := 1; i < 10; i++ {
		for j := 1; j <= i; j++ {
			fmt.Printf("%d*%d=%d\t",j,i,i*j)
		}
		fmt.Println()
	}
复制
1
2
3
4
5
6
7
8

#

12下一页
上一篇:Go 语言条件语句下一篇:Go语言数组
Go语言教程

Archiver|手机版|小黑屋|小白教程 ( 粤ICP备20019910号 )

GMT+8, 2024-9-20 01:33 , Processed in 0.024311 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc. Template By 【未来科技】【 www.wekei.cn 】

返回顶部