go语言实现随机数生成器。
package main import "fmt" import "math/rand" import "time" func rand_generator() chan int{ out:=make(chan int) go func(){ for{ rand.Seed(time.Now().Unix()) out <- rand.Intn(100) } }() return out } func main(){ rand_service_handler:=rand_generator() fmt.Printf("%d\n",<-rand_service_handler) }
最好设置seed的值,这样产生的随机数相对比较“随机”点哈。至于要用哪个值作为seed呢,时间戳就是一个不错的选择
有疑问加站长微信联系(非本文作者)