登录
首页 >  Golang >  Go问答

在 Go 中生成随机数

来源:Golang技术栈

时间:2023-03-28 13:26:06 370浏览 收藏

golang学习网今天将给大家带来《在 Go 中生成随机数》,感兴趣的朋友请继续看下去吧!以下内容将会涉及到golang等等知识点,如果你是正在学习Golang或者已经是大佬级别了,都非常欢迎也希望大家都能给我建议评论哈~希望能帮助到大家!

问题内容

我试图在 Go 中生成随机数(整数),但无济于事。我在 中找到了randcrypto/rand,这似乎是我想要的,但我无法从文档中得知如何使用它。这就是我现在正在尝试的:

    b := []byte{}
    something, err := rand.Read(b)
    fmt.Printf("something = %v\n", something)
    fmt.Printf("err = %v\n", err)

但不幸的是,这总是输出:

    something = 0
    err = 

有没有办法解决这个问题,以便它实际生成随机数?或者,有没有办法设置生成的随机数的上限?

正确答案

crypto/rand仅提供随机数据的二进制流,但您可以使用以下方法从中读取整数encoding/binary

package main

import "encoding/binary"
import "crypto/rand"

func main() {
    var n int32
    binary.Read(rand.Reader, binary.LittleEndian, &n)
    println(n)
}

今天带大家了解了golang的相关知识,希望对你有所帮助;关于Golang的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

声明:本文转载于:Golang技术栈 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>