无涯教程-Go - 随机数

26 阅读1分钟

我们可以使用rand对象生成随机数。我们应该为rand对象提供一些种子,以使生成数量不同。如果我们不提供种子,那么编译器将产生相同的结果。

Go随机数生成

package main

import "fmt" import ( "math/rand" //"time" "time" ) func main() { fmt.Print(rand.Intn(100)) //将产生 0 到 100 之间的随机整数 fmt.Println()

fmt</span><span class="pun">.</span><span class="typ">Print</span><span class="pun">(</span><span class="pln">rand</span><span class="pun">.</span><span class="typ">Float64</span><span class="pun">())</span><span class="pln">	</span><span class="com">// 将产生0到1之间的随机数</span><span class="pln">
fmt</span><span class="pun">.</span><span class="typ">Println</span><span class="pun">()</span><span class="pln">

rand</span><span class="pun">.</span><span class="typ">Seed</span><span class="pun">(</span><span class="pln">time</span><span class="pun">.</span><span class="typ">Now</span><span class="pun">().</span><span class="typ">Unix</span><span class="pun">())</span><span class="pln"> </span><span class="com">//产生随机数</span><span class="pln">
myrand </span><span class="pun">:=</span><span class="pln"> random</span><span class="pun">(</span><span class="lit">1</span><span class="pun">,</span><span class="pln"> </span><span class="lit">20</span><span class="pun">)</span><span class="pln">

fmt</span><span class="pun">.</span><span class="typ">Println</span><span class="pun">(</span><span class="pln">myrand</span><span class="pun">)</span><span class="pln">

}

func random(min, max int) int { return rand.Intn(max - min) + min }

输出:

81
0.9405090880450124
17

参考链接

www.learnfk.com/go/go-rando…