Wie man verschiedene Zufallszahlen durch scala erzeugt? und die Zahl sollte so kurz wie möglich sein.Ich möchte eine eindeutige ID zu Label-Daten zu generieren, in der gleichen Zeit sollte die ID kurz genug sein, um die Kosten zu sparen?Wie man verschiedene Zufallszahlen durch scala erzeugt? und die Zahl sollte so kurz wie möglich sein
Wie man verschiedene Zufallszahlen durch scala erzeugt? und die Zahl sollte so kurz wie möglich sein
Antwort
Versuchen Sie folgendes:
import util.Random.nextInt
Stream.continually(nextInt(100)).take(10)
oder Sie können in der Konsole überprüfen die Zahlen generiert:
import util.Random.nextInt
val res = Stream.continually(nextInt(100)).take(10)
res.foreach(println)
Da Ihre Anforderung ist
Zufallszahl
uni que
so kurz wie möglich
Dann denke ich, sollten Sie scala.util.Random.shuffle
verwenden erwägen, zB
scala.util.Random.shuffle(1 to 30)
Above-Code wird eine Vector
erzeugen, die eindeutige Zufallszahl enthält (in Bezug auf der Position) von 1 bis 30, z. B. Vector(26, 10, 7, 29, 11, 14, 16, 1, 12, 9, 28, 6, 19, 4, 27, 8, 13, 18, 30, 20, 23, 5, 21, 24, 17, 25, 2, 15, 22, 3)
.
Im Grunde erfüllt es einfach alles, was Sie brauchen.
Wenn Sie es vorziehen, um das Ergebnis in Set
oder List
zu erhalten, rufen Sie einfach toSet
oder toList
Methode tun.
nextInt
kann die gleiche Sache erreichen, aber Sie könnten eine Menge Logik und versuchen, Mechanismus für sie zu erreichen.
Im Grunde können Sie "Set" verwenden, um eindeutige Zufallszahlen zu generieren.
val r = scala.util.Random
var temp:Int = 0
var s:Set[Int] = Set()
var i:Int = 0
while(i<n){
temp = r.nextInt(range) //random number will be checked whether it is already in the set or not
if(!s.contains(temp)){ //if the random number is not in the set
s=s+temp; //random number is added in the set
i+=1
}
}
s.toArray //converts the set into array
- 1. Sollte der Code kurz/prägnant sein?
- 2. CMake: Wie man Binärdateien "so statisch wie möglich" erzeugt
- 3. In MATLAB, wie man Zufallszahlen abhängig von den Daten erzeugt?
- 4. Wie generiert man Zufallszahlen parallel?
- 5. Wie man Objekte, die durch Reflektion erzeugt wurden, richtig ausgießt
- 6. Generieren von Zufallszahlen durch Gruppe mit Ersatz
- 7. Trim Dateiname, um kurz genug zu sein
- 8. Generieren Sie verschiedene Zufallszahlen
- 9. Wie kann man die Objektinitialisierung kurz und sauber machen?
- 10. Wie man eine lange Zahl zufällig in clojure erzeugt
- 11. Wie man Musik durch sein uri
- 12. Sollte serialVersionUID für verschiedene Klassen eindeutig sein?
- 13. Wie teilt man eine ganze Zahl durch doppelte?
- 14. Wie erzeugt man eine zufällige ganze Zahl zwischen bestimmten Werten aus einem Array von Bytes
- 15. Hash-Equals verhält sich nicht so wie es sein sollte
- 16. HTML-Attribut accesskey funktioniert nicht so wie es sein sollte
- 17. Zentrieren divs funktioniert nicht so wie es sein sollte
- 18. Wie erkennt man die Unendlichkeitswerte in Scala?
- 19. Wie man Methodensignatur erzeugt?
- 20. Wie man Permutationen erzeugt?
- 21. Unity3D Void Starten funktioniert nicht so wie es sein sollte
- 22. Javascript-Injektion funktioniert nicht so, wie es sein sollte
- 23. Wie kann ich für jeden Spieler verschiedene Zufallszahlen generieren?
- 24. Ist es möglich, durch physikalische Prozesssimulation Zufallszahlen zu generieren?
- 25. Wie man JSon in Gatling dynamisch erzeugt?
- 26. Wie man `DOS/Unix` erzeugt Wie GUI
- 27. Wie man eine Reihe durch sein Gitter schneidet?
- 28. Wie erzeugt man Matrizen, die die Dreiecksungleichung erfüllen?
- 29. Wie erzeugt man Typhierarchie-Diagramme mit Scaladoc?
- 30. Wie man Methode mit unbekannten Parametern erzeugt?
Teil von dem, was Sie hier http://stackoverflow.com/questions/9094820/how-to-generate-a-list-of-random-numbers/9094879#9094879 – Learner
Dank finden fragen können, aber Entschuldigung, es kann meine Anforderung nicht erfüllen. Ich möchte eine eindeutige Zufallszahl. sowie . val r = new util.Random println (1 bis 30 Karte (_ => r.nextInt (100))). Es wird gedruckt: Vektor (16, 20, 77, 94, 9, 82, 14, 64, 23, 44, 30, 56, 19, 75, 94, 28, 88, 78, 33, 99, 49, 62, 68, 52, 99, 21, 74, 1, 70, 75). es hat die 99 wiederholt. –
"Die ID sollte kurz genug sein, um die Kosten zu sparen" Können Sie mehr über die "Kosten" erfahren? Sie meinen die Kosten für die Generierung einer Zufallszahl? Oder Kosten für die Speicherung der Nummer? – Radian