登录
首页 >  Golang >  Go问答

在 Go 中生成一个随机的、固定长度的字节数组

来源:Golang技术栈

时间:2023-04-12 15:49:03 457浏览 收藏

目前golang学习网上已经有很多关于Golang的文章了,自己在初次阅读这些文章中,也见识到了很多学习思路;那么本文《在 Go 中生成一个随机的、固定长度的字节数组》,也希望能帮助到大家,如果阅读完后真的对你学习Golang有帮助,欢迎动动手指,评论留言并分享~

问题内容

我有一个字节数组,固定长度为 4。

token := make([]byte, 4)

我需要将每个字节设置为随机字节。我怎样才能做到这一点,以最有效的方式?就我而言,这些math/rand方法不提供随机字节函数。

也许有一种内置方式,或者我应该生成一个随机字符串并将其转换为字节数组?

正确答案

包兰特

import "math/rand"

函数读取

func Read(p []byte) (n int, err error)

Read 从默认 Source 生成 len(p) 个随机字节并将它们写入 p。它总是返回 len(p) 和一个 nil 错误。

func (*Rand) 读取

func (r *Rand) Read(p []byte) (n int, err error)

Read 生成 len(p) 个随机字节并将它们写入 p。它总是返回 len(p) 和一个 nil 错误。

例如,

package main

import (
    "math/rand"
    "fmt"
)

func main() {
    token := make([]byte, 4)
    rand.Read(token)
    fmt.Println(token)
}

输出:

[187 163 35 30]

好了,本文到此结束,带大家了解了《在 Go 中生成一个随机的、固定长度的字节数组》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多Golang知识!

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