golang生成随机数可使用math/rand包,golang
示例以下:spa
package main import ( "fmt" "math/rand" ) func main() { for i:=0; i<10; i++ { fmt.Println(rand.Intn(100)) } }
而发现这种状况,每次执行的结果同样.code
修改以下:blog
package main import ( "fmt" "time" "math/rand" ) func main() { r := rand.New(rand.NewSource(time.Now().UnixNano())) for i:=0; i<10; i++ { fmt.Println(r.Intn(100)) } }
而这种方式就可使用时间种子来获取不一样的结果了。class
示例2:import
package main import ( "fmt" "math/rand" "time" ) func main() { rand.Seed(time.Now().UnixNano()) for i := 0; i < 10; i++ { x := rand.Intn(100) fmt.Println(x) } }
例子是打印10个100之内(0-99)的随机数字。随机数