for循环五种用法
package main
import(
"fmt"
)
func main(){
// 1
for i := 1;i<=10;i++{
fmt.Println("ok")
}
j:=0
// 2
for j<10{
fmt.Println(j)
j++
}
// 3
k:=0
for{
k++;
fmt.Println("k",k)
if(k==10){
break
}
}
// 4 遍历字符串和数组
var str string = "李威彤"
str1 := []rune(str) // 将str转成切片这个数据类型,否则中文会产生乱码
for i := 0; i<len(str1); i++ {
fmt.Printf("%c\n",str1[i])
}
// 5 法二
for index,value := range str{
fmt.Printf("index=%d,val=%c\n",index,value)
}
}
go无while和do-while,可用for
生成99这个随机数
package main
import(
"fmt"
"math/rand"
"time"
)
func main(){
// 为了生成一个随机数,还需给rand设置一个种子
// rand.Seed(time.Now().Unix()) // 会返回毫秒数
// n:= rand.Intn(100)+1 // [0,100)
// fmt.Println(n)
// 知道生成的随机数是99时才退出循环,统计知道生成99时,参与了多少个数。
var count int = 0
for{
rand.Seed(time.Now().UnixNano())
n:=rand.Intn(100)
fmt.Println(n)
count++
if n==99 {
break
}
}
fmt.Println(count)
}