rand.Intn 同じ数値/値 質問する

rand.Intn 同じ数値/値 質問する

誰か、Go の例がここにある理由を教えてください:

https://tour.golang.org/basics/1

rand.Intn(10) に対して常に同じ値を返しますか?

ベストアンサー1

2つの理由:

  1. グローバルを初期化する必要がありますSourceによって使われたrand.Intn()パッケージの他の機能randを使用するrand.Seed()。 例えば:

    rand.Seed(time.Now().UnixNano())
    

    重複している可能性のあるものを見るGo Randパッケージの難しさ
    パッケージドキュメントから引用rand:

    Float64やIntなどのトップレベル関数は、デフォルトの共有ソースを使用します。プログラムが実行されるたびに、決定論的な値のシーケンスを生成します。実行ごとに異なる動作が必要な場合は、Seed 関数を使用してデフォルトの Source を初期化します。

  2. 旅行例を実行する遊び場に行く出力をキャッシュします。
    詳細はGolang で count++ (count = count + 1 ではなく) を使用するとマップの返される方法が変わるのはなぜですか?

おすすめ記事