ホームページ  >  記事  >  バックエンド開発  >  Golangでリストからランダムな要素を生成するにはどうすればよいですか?

Golangでリストからランダムな要素を生成するにはどうすればよいですか?

WBOY
WBOYオリジナル
2024-06-05 16:28:01970ブラウズ

Golang でリストのランダムな要素を生成する方法: rand.Intn(len(list)) を使用して、リストの長さの範囲内でランダムな整数を生成し、その整数をインデックスとして使用して、リストから対応する要素を取得します。

如何在 Golang 中从列表中生成随机元素?

Golangでリストからランダムな要素を生成するにはどうすればよいですか?

Golang では、組み込みの rand パッケージを使用して範囲内のランダムな整数を生成し、この整数を使用してリストにインデックスを付け、ランダムな要素を取得できます。

実装方法のコードは次のとおりです:

package main

import (
    "fmt"
    "math/rand"
    "time"
)

func main() {
    // 创建一个元素列表
    list := []string{"a", "b", "c", "d", "e"}

    // 设置随机种子(通常使用当前时间作为种子)
    rand.Seed(time.Now().UnixNano())

    // 生成一个范围内的随机整数,范围为 [0, len(list)-1]
    n := rand.Intn(len(list))

    // 使用随机整数作为索引,从列表中获取随机元素
    randomElement := list[n]

    fmt.Println(randomElement)
}

実践的な例:

上記のコードをプログラムで使用して乱数を生成する方法を示す例です:

package main

import (
    "fmt"
    "math/rand"
    "time"
)

func main() {
    numbers := []int{1, 2, 3, 4, 5}

    // 生成一个随机索引
    randomIndex := rand.Intn(len(numbers))

    // 获取随机数字
    randomNumber := numbers[randomIndex]

    fmt.Println(randomNumber)
}

このプログラムを実行すると、次の出力が表示されます。リストからの乱数 選択された数値。

以上がGolangでリストからランダムな要素を生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。