go 语言 初识时间函数

//使用时间戳当做随机种子来生成随机数

package main

import (

"fmt"

"math/rand"  //生成随机数

"time"           //生成时间函数

)

func main() {

a := rand.NewSource(time.Now().Unix())

r := rand.New(a)

fmt.Println(r.Intn(100))      // [0,100)的随机值,返回值为int

fmt.Println(r.Int31())        // 31位int随机值,返回值为int32

fmt.Println(r.Int31n(100))    // [0,100)的随机值,返回值为int32

fmt.Println(r.Float32())      // 32位float随机值,返回值为float32

fmt.Println(r.Float64())      // 64位float随机值,返回值为float64

fmt.Println(r.Intn(100) - 50) // [-50, 50)的随机值

}

用go生成随机数时,如果不设置一个随机种子,那么返回的是同一个值 如:

package main

import ("fmt")

import ("math/rand")

var array = [100]int{}

func main() {

fmt.Println(rand.Intn(100))

}

所以一般使用时间戳来当做随机种子

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Go语言数据类型 Go语言本质是用C语言编写的一套高级开发语言, 所以Go语言中的数据类型大部分都是由C语言演变而...
    极客江南阅读 940评论 0 6
  • 使用定时器t := time.NewTicker(1 * time.Second)// 第一种方式for { ...
    qishuai阅读 938评论 0 2
  • 出处---Go编程语言 欢迎来到 Go 编程语言指南。本指南涵盖了该语言的大部分重要特性 Go 语言的交互式简介,...
    Tuberose阅读 18,501评论 1 46
  • 曜 真的很想你,所以把那些想说给你听的话都写在这里。 我知道你大概你一辈子都不会看见这些文字,但对于无法忘记你的我...
    写给记忆里的那个人阅读 118评论 0 1
  • 你以为二十岁 是花季 是年少 是美丽动人 是白色衬衣 是肤若凝脂 是笑若星辰 你以为二十岁 是意气风发 是挥斥方遒...
    两生阅读 429评论 0 1