最新公告
  • 欢迎您光临码农资源网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!加入我们
  • rand.Seed(SEED) 已弃用,如何使用 NewRand(NewSeed( ) )?

    rand.seed(seed) 已弃用,如何使用 newrand(newseed( ) )?

    php小编西瓜在这里给大家分享一种解决方案,当我们使用rand.Seed(SEED)被弃用时,我们可以使用NewRand(NewSeed())来代替。NewSeed()函数可以生成一个新的种子,而NewRand()函数则可以使用这个新种子来生成随机数。这种方法可以帮助我们继续使用随机数生成功能,而不受到rand.Seed(SEED)被弃用的限制。通过这种方式,我们可以轻松地解决这个问题,并继续使用随机数生成功能。

    问题内容

    我现在正在学习go。

    我是一个例子,我有这行

    rand.seed(seed)

    但是关于 go 的 vscode 扩展告诉了我

    rand.Seed has been deprecated since Go 1.20 and an alternative has been available since Go 1.0: Programs that call Seed and then expect a specific sequence of results from the global random source (using functions such as Int) can be broken when a dependency changes how much it consumes from the global random source. To avoid such breakages, programs that need a specific result sequence should use NewRand(NewSource(seed)) to obtain a random generator that other packages cannot access.  (SA1019)
    

    我无法理解如何按照建议使用 newrand(newsource(seed))

    我找到了有关 newsource 的文档 https://pkg.go.dev/math/rand#newsource

    但是没有关于 newrand 函数的文档

    新推荐的 rand.seed(seed) 等效项是什么?

    解决方法

    go 1.20 种子文档有一个拼写错误。按照最新文档中的说明使用 rand.new(rand.newsource(seed)) a> 和 go 1.20 发行说明

    创建随机源并使用源上的方法而不是调用包函数:

    r := rand.New(rand.NewSource(seed))
      fmt.Println(r.Uint64())
      fmt.Println(r.Uint64())
    想要了解更多内容,请持续关注码农资源网,一起探索发现编程世界的无限可能!
    本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
    如有侵权请发送邮件至1943759704@qq.com删除

    码农资源网 » rand.Seed(SEED) 已弃用,如何使用 NewRand(NewSeed( ) )?
    • 7会员总数(位)
    • 25846资源总数(个)
    • 0本周发布(个)
    • 0 今日发布(个)
    • 292稳定运行(天)

    提供最优质的资源集合

    立即查看 了解详情