制定长度的随机字符串的问题.~

jan9snow · · 686 次点击 · 开始浏览    置顶
这是一个创建于 的主题,其中的信息可能已经有所发展或是发生改变。

```go // 生成指定长度的字符串 func RandomStr(len int) (salt []byte) { salt = make([]byte, len) rnd := rand.New(rand.NewSource(time.Now().UnixNano())) for i := 0; i < 6;i++ { salt[i] = byte(rnd.Intn(95) + 32) } return } ``` 然后打印10次,: ```shell salt = (T(Q]! salt = (T(Q]! salt = (T(Q]! salt = (T(Q]! salt = (T(Q]! salt = (T(Q]! salt = (T(Q]! salt = s0H1(! salt = s0H1(! salt = s0H1(! ``` ** WTF ** : 随机字符串有这么难写吗? 问题在哪里?

有疑问加站长微信联系(非本文作者)

第 1 条附言  · 
做个结束吧... 这段代码,我用 for 循环试了几次,都是重复的随机数.因为这样写是不对的. 如果项目中用到了随机数...那么应该直接在 `main.go` 的 `init()` 文件里喂个随机数的种子.用的时候在 喂, 就可能导致,喂的数字一样而使生成的随机序列一致.

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

686 次点击  
加入收藏 微博
5 回复  |  直到 2018-11-23 18:36:13
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传