中文文档:https://studygolang.com/pkgdoc
1.1. 生成随机数的例子如下:
需要用到math/rand包。
import (
"fmt"
"math/rand"
"time"
)
func main() {
fmt.Println("n",rand.Intn(100)) //没有设置seed,每次都生成一个固定的值81
//time.Now().Unix() 返回从1971-01-01到当前时间的秒数。
//为了生成随机数,需要给rand设置一个随机数种子。否则每次生成调用Intn(n int) 都生成一个固定的值。
rand.Seed(time.Now().Unix())
//Intn(n int) 返回一个取值范围在[0,n)的伪随机int值,如果n<=0会panic。
fmt.Println("n",rand.Intn(100))
}
要注意几点:
- 为了生成随机数,需要给rand设置一个随机数种子。否则每次生成调用Intn(n int) 都生成一个固定的值。
- rand的 Intn(n int) 方法返回一个取值范围在[0,n)的伪随机int值,如果n<=0会panic。
- time.Now().Unix() 返回从1971-01-01到当前时间的秒数。