📅  最后修改于: 2023-12-03 15:08:37.052000             🧑  作者: Mango
在 Go 语言中,获取随机数需要使用 math/rand 包和 time 包。需要使用 time 包来设置种子,以保证每次生成的随机数都不一样。而 math/rand 包则提供了一系列的随机数生成函数。要生成 int63 类型的随机数,可以使用 Int63 函数。
package main
import (
"fmt"
"math/rand"
"time"
)
func main() {
// 设置种子,保证每次生成的随机数都不一样
rand.Seed(time.Now().UnixNano())
// 获取 int63 类型的随机数
randomInt63 := rand.Int63()
fmt.Printf("%d\n", randomInt63)
}
在上面的例子中,首先通过调用 time.Now().UnixNano() 函数获取当前时间的纳秒数,并将其作为参数传递给 rand.Seed 函数,用来设置生成随机数所需的种子值。然后使用 rand.Int63 函数生成一个 int63 类型的随机数,并将其打印出来。
需要注意的是,如果不使用 time 包设置种子,或者每次设置的种子相同,那么每次生成的随机数都将是相同的。因此,在实际应用中,一般会使用当前时间戳或者其他随机数作为种子,以保证每次生成的随机数都是不同的。
以上就是在 Go 语言中获取 int63 类型的随机数的方法,希望对你有所帮助。