Heim > Backend-Entwicklung > Golang > rand.Seed(SEED) ist veraltet, wie verwende ich NewRand(NewSeed( ) )?

rand.Seed(SEED) ist veraltet, wie verwende ich NewRand(NewSeed( ) )?

PHPz
Freigeben: 2024-02-15 16:00:10
nach vorne
720 Leute haben es durchsucht

rand.Seed(SEED) 已弃用,如何使用 NewRand(NewSeed( ) )?

php-Editor Xigua ist hier, um Ihnen eine Lösung mitzuteilen. Wenn rand.Seed(SEED) veraltet ist, können wir stattdessen NewRand(NewSeed()) verwenden. Die Funktion NewSeed() kann einen neuen Startwert generieren, und die Funktion NewRand() kann diesen neuen Startwert verwenden, um Zufallszahlen zu generieren. Dieser Ansatz hilft uns, weiterhin die Funktionalität zur Zufallszahlengenerierung zu nutzen, ohne dass die Einschränkungen von rand.Seed(SEED) veraltet sind. Auf diese Weise können wir dieses Problem leicht lösen und die Funktionalität zur Zufallszahlengenerierung weiterhin nutzen.

Frageninhalt

Ich lerne jetzt los.

Ich bin ein Vorbild, ich habe diese Zeile

rand.seed(seed)
Nach dem Login kopieren

Aber die vscode-Erweiterung für Go hat es mir gesagt

rand.Seed has been deprecated since Go 1.20 and an alternative has been available since Go 1.0: Programs that call Seed and then expect a specific sequence of results from the global random source (using functions such as Int) can be broken when a dependency changes how much it consumes from the global random source. To avoid such breakages, programs that need a specific result sequence should use NewRand(NewSource(seed)) to obtain a random generator that other packages cannot access.  (SA1019)
Nach dem Login kopieren

Ich verstehe nicht, wie man newrand(newsource(seed)) wie vorgeschlagen verwendet.

Ich habe die Dokumentation zu newsource gefunden: https://pkg.go.dev/math/rand#newsource

Aber es gibt keine Dokumentation über die newrandFunktion

Was ist das neue empfohlene Äquivalent von rand.seed(seed)? rand.seed(seed) 等效项是什么?

解决方法

go 1.20 种子文档有一个拼写错误。按照最新文档rand.new(rand.newsource(seed))Problemumgehung

go 1.20 Torrent-Dokument

Es liegt ein Rechtschreibfehler vor. Befolgen Sie die Anweisungen in der aktuellsten Dokumentationrand.new(rand.newsource(seed)) a> und

go 1.20 Versionshinweise🎜. 🎜 🎜 Erstellen Sie eine Zufallsquelle und verwenden Sie Methoden für die Quelle, anstatt Paketfunktionen aufzurufen: 🎜
r := rand.New(rand.NewSource(seed))
  fmt.Println(r.Uint64())
  fmt.Println(r.Uint64())
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonrand.Seed(SEED) ist veraltet, wie verwende ich NewRand(NewSeed( ) )?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:stackoverflow.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage