Go 编程:操作与条件语句控制
1. Go 中随机数的生成
在 Go 编程里,若要生成随机数,可借助 time 包。 time 包能获取当前系统时间,此时间可作为随机数生成的种子。具体操作如下:
- 运用 Now() 函数读取当前系统时间,再用 UnixNano() 将时间值格式化为 int64 类型。由于时间持续变化,每次程序运行时都会生成新的种子,进而产生更具随机性的值。
- 利用 rand.NewSource 生成新的种子值,程序会用这个种子来生成随机数。无论程序要生成多少个随机数,仅需生成一次新种子。
以下是示例代码:
package main
import (
"fmt"
"math/rand"
"time"
)
func main() {
// 以当前时间作为随机数种子
rand.Seed(time.Now().UnixNano())
// 生成两个 0 到 99 之间的随机整数
fmt.Println(rand.Intn(100))
fmt.Println(rand.Intn(100))
}
运行该程序,你会看到两个 0 到 99 之间的整数。多次运行程序,输出结果会不同,因为每次都使用了不同的时间作为种子。你还能把传递给 Intn 的 100 改成其他数字,也可以用时间为生成随机浮
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



