1.隨機數(shù)
隨機數(shù),是使用一個確定性的算法計算出來隨機數(shù)序。在程序開發(fā)中經(jīng)常需要產(chǎn)生隨機數(shù),如隨機數(shù)驗證碼登陸、作為唯一身份標識數(shù)據(jù)等等。
2.rand庫
golang中產(chǎn)生隨機數(shù)主要有兩個包,分別是“math/rand”和“crypto/rand”。
“math/rand”的rand包實現(xiàn)了偽隨機數(shù)生成器。
"crypto/rand"的rand包實現(xiàn)了用于加解密的更安全的隨機數(shù)生成器。
3.生成指定位數(shù)隨機數(shù)
以生成六位隨機數(shù)為例
package main import ( "fmt" "math/rand" ) func CreateCaptcha() string { return fmt.Sprintf("%06v", rand.New(rand.NewSource(time.Now().UnixNano())).Int31n(1000000)) } func main(){ fmt.Println(CreateCaptcha() ) }
輸出結(jié)果:
同理生成八位隨機數(shù)只需修改產(chǎn)生隨機數(shù)參數(shù)即可
func CreateCaptcha() string { return fmt.Sprintf("%08v", rand.New(rand.NewSource(time.Now().UnixNano())).Int31n(100000000)) }
依次類推,需要其他指定位數(shù)的隨機數(shù)時均可通過修改上述參數(shù)產(chǎn)生。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
標簽:廣西 德州 阿克蘇 貴陽 慶陽 調(diào)研邀請 太原 西雙版納
巨人網(wǎng)絡通訊聲明:本文標題《golang生成指定位數(shù)的隨機數(shù)的方法》,本文關(guān)鍵詞 golang,生成,指定,位數(shù),的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權(quán)與本站無關(guān)。