Go 如果产生随机数
2023-03-18
在Go中,使用rand包并通过设置当前时间纳秒值为种子,可以生成指定范围的随机整数。
在Go中产生随机数可以使用rand包,具体步骤如下:
- 引入rand包:
import "math/rand"
- 设置随机数种子:
rand.Seed(time.Now().UnixNano())
这里使用当前时间的纳秒值作为种子。
- 生成一个 [0, n) 之间的整数:
rand.Intn(n)
其中 n 是一个大于0的整数。
- 生成一个 [a, b) 之间的整数:
rand.Intn(b-a) + a
其中 a 和 b 是两个整数,且 a 小于 b。
例如,如果要生成一个范围在 [0, 10) 之间的随机整数,可以使用以下代码:
package main
import (
"fmt"
"math/rand"
"time"
)
func main() {
rand.Seed(time.Now().UnixNano())
fmt.Println(rand.Intn(10))
}
输出结果为:
5