当前位置: 首页 > 面试题库 >

Go rand.Intn相同的数字/值

逄宁
2023-03-14
问题内容

谁能告诉我为什么这里的Go示例:

https://tour.golang.org/basics/1

总是为rand.Intn(10)返回相同的值?


问题答案:

2个原因:

  1. 你必须initalize全球Source所使用rand.Intn()和其他功能的rand使用包rand.Seed()。例如:
    rand.Seed(time.Now().UnixNano())
    

使用Go Rand软件包查看Difficulty的可能重复项。 引用以下文件的doc rand

诸如Float64和Int之类的顶级函数使用默认的共享源 ,该在每次运行程序时都会生成确定的值序列。
如果每次运行需要不同的行为,请使用种子函数初始化默认的源。

  1. 在巡回赛上运行的例子去游乐场,它可以缓存其输出。
    请参阅[为什么count ++(而不是count = count +1)更改Golang中返回地图的方式的详细信息)。


 类似资料:
  • 问题内容: 下面的代码旨在生成间隔为[1,100]的五个伪随机数的列表。我为with设置了种子,它以unix时间返回系统时间。当我使用Microsoft Visual Studio 2013在Windows 7上编译并运行该程序时,它会按预期运行(请参阅下文)。但是,当我在Arch Linux中使用g ++编译器执行此操作时,它的行为就很奇怪。 在Linux中,每次将生成5个数字。每次执行后4个数

  • 我使用的是来自的fonthttp://fonts.googleapis.com/css?family=Open Sans。由于安全原因,一些客户端使用封闭环境,因此我需要使用从npm安装的本地字体。 我尝试了npm为提供的多个软件包,如,,但使用相同css的字体与以前使用GoogleApis字体呈现的字体不同,尤其是

  • 下面的代码安全吗?编写类似这样的代码可能很有诱惑力: 该映射仅用于字符串文本。 我认为这是完全合法的,似乎正在起作用,但是我从未见过保证在两个不同地方使用的文字指针是相同的。我无法设法让编译器为具有相同内容的文本生成两个单独的指针,所以我开始怀疑这个假设有多坚定。 我只关心相同内容的文字是否可以有不同的指针。或者更正式地说,上面的代码可以除外吗? 我知道有一种方法可以编写代码来确保它有效,我认为上

  • 我有一个算法,在一些不同的字符串之间给我一个分数。我的想法是:如果两个字符串之间的分数高于0'80,那么这两个字符串将被认为是相同的,当我应用keyby(“name”)时,那些相似的字符串将被键入,因为它们具有完全相同的名称。 直观示例: DataStream1-----约翰·洛克,米奇·米克,威尔·威廉姆斯 希望你能理解,谢谢!

  • 问题内容: 我有几根不同长度的琴弦 我需要将它们转换为相同大小的字符串,例如: 如何在每个字符串前自动添加正确的0数? 谢谢 问题答案: 用途:

  • 问题内容: 我正在使用Apache Derby作为嵌入式数据库。 DatabaseCheck.java 此类用于创建表。 创建表之后,我正在另一个类中使用方法插入数据。 由于以下错误,我从未设法插入任何内容 为什么是这样? 问题答案: 您的查询不正确,当您使用该类型的语法时,假设所有文件都必须具有值,并且由于您具有auto_incremented列,因此未包含它会使它无效。 因此,要更正语法,您必