go 生成隨機數 獲取當前微秒數 獲取星期幾

2021-08-28 06:57:02 字數 683 閱讀 9066

go生成隨機數的方法和c中的差不多,都是先設定種子,一般以當前時間為準,然後設定範圍,**如下

func generaterangenum(min int, max int) int 

rand.seed(time.now().unix())

randnum := rand.intn(max-min) + min

return randnum

}

注意判斷,最小值和最大值相等的情況,否則會產生panic

go中沒有和php中的豐富的函式,但是time包裡有個獲取當前unix時間的納秒數,然後再進行轉換即可。

func getmicrotime() int64
// weekdaymap 定義返回碼對應的描述

var weekdaymap = map[string]int

//php中的date('w')返回數字0(日)-6(六)

func getweekday() int

// 給定時間返回unix時間戳

//mktime($hour, 0, 0, date('m'), date('d'), date('y')) * 1000;

func getmicrotimebyhour(hour string) int64

Go生成隨機數

設定時間種子使用time包 生成隨機數需要math rand包 列印輸出使用fmt包 不設定時間種子的話,每次生成的rand值相同 package main import fmt import math rand import time func generate randnum int func ...

go生成隨機數

先看官方文件 func rand intn func r rand intn n int int返回乙個取值範圍在 0,n 的偽隨機int值,如果n 0會panic。func rand seed func r rand seed seed int64 使用給定的seed來初始化生成器到乙個確定的狀態...

GO獲取隨機數

使用的 math rand 包。基本隨機數 a rand.int b rand.intn 100 生成0 99之間的隨機數 fmt.println a fmt.println b 可以生成隨機數,但是數值不會變。生成可變隨機數 將時間戳設定成種子數 rand.seed time.now unixna...