For语句
- for 语句想必大家很是熟悉了,但是Go语言中的使用也是有了一些不同
- 例如我们在python常用的 for i in range()语句,在GO语言中就有所不同
- 我们使用的while 在Go中也可以通过for进行模仿
接下来还是老规矩,直接上代码
首先介绍Go的for的结构,和C类似,下面通过冒泡排序介绍例子
package main
import "fmt"
func BubbleSort(num []int){
// 冒泡排序
for i:= 0;i < len(num);i++{
for j := 1;j<len(num)-1;j++{
if num[j] < num[j-1]{
num[j-1],num[j] = num[j], num[j-1]
}
}
}
}
func main() {
// 定义一个列表
a := [...] int {4,28, 29, 43,5, 6,34}
BubbleSort(a[:])
}
output: [4 5 6 28 29 43 34]
第二个例子介绍for模仿while的示例代码
package main
import "fmt"
func ImitateWhile(){
// 模仿while用法
var a int = 0
for a < 3{
a += 1
}
fmt.Printf("此时的a的值为:%d\n", a)
}
func main() {
ImitateWhile()
}
output: 此时的a值为3
- 此时的for就如同while的作用
第三个例子使我们比较常用的for range类型
package main
import "fmt"
func OftenUseMethod(){
a := [...] int {5, 6, 7, 8}
for index_, value_ := range a{
if index_ == 2{
fmt.Println("此时的value:", value_)
}
}
}
func main() {
OftenUseMethod()
}
output : 此时的value:7
- 在go中我们使用的for range 不同于python使用如此方便,而是类似python 中的 for index, value in enumerate(list),
- 所以大家在使用的时候需要注意