Golang 如何获取 Float64 类型的随机数
在Golang中,我们可以使用标准库中的math/rand
包来生成随机数。而对于获取Float64类型的随机数,可以使用rand.Float64()
函数来实现。
示例代码
package main
import (
"fmt"
"math/rand"
"time"
)
func main() {
rand.Seed(time.Now().UnixNano()) // 设置随机数种子为时间戳
randomNumber := rand.Float64()
fmt.Printf("生成的随机数为:%.2f\n", randomNumber) // 保留两位小数输出
}
代码说明:
- 首先,我们需要通过调用
rand.Seed()
函数来设置随机数种子,以保证每次生成的随机数是不同的。一般情况下,可以将种子设置为当前时间戳,代码中使用了time.Now().UnixNano()
函数来获取当前时间戳的纳秒表示。 - 然后,我们调用
rand.Float64()
函数来生成一个Float64类型的随机数,并将其保存在randomNumber
变量中。 - 最后,我们使用
fmt.Printf()
函数来格式化输出随机数。其中,格式化字符串”%.2f”表示保留两位小数输出。
完整代码
package main
import (
"fmt"
"math/rand"
"time"
)
func main() {
rand.Seed(time.Now().UnixNano())
randomNumber := rand.Float64()
fmt.Printf("生成的随机数为:%.2f\n", randomNumber)
}
运行代码后,可以得到类似如下的输出:
生成的随机数为:0.57
结论
在Golang中,我们可以使用math/rand
包中的rand.Float64()
函数来获取Float64类型的随机数。在生成随机数之前,我们需要使用rand.Seed()
函数来设置随机数种子,以保证每次生成的随机数是不同的。另外,我们可以使用fmt.Printf()
函数来格式化输出随机数,以便保留需要的小数位数。