8.581
Bearbeitungen
Jneug (Diskussion | Beiträge) |
Jneug (Diskussion | Beiträge) KKeine Bearbeitungszusammenfassung |
||
(8 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
{{Navigation | {{Navigation}} | ||
== Zufallszahlen generieren == | == Zufallszahlen generieren == | ||
Zeile 7: | Zeile 6: | ||
Java bietet verschiedene Methoden, Zufallszahlen zu erzeugen. Diese basieren | Java bietet verschiedene Methoden, Zufallszahlen zu erzeugen. Diese basieren | ||
auf der Methode <code> | auf der Methode <code>[https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#random-- Math.random()]</code>, die eine Pseudozufallszahl zwischen 0 (inklusive) und 1 (exklusive) erzeugt. Diese Fließkommazahlen können dann durch Rechenoperationen in den gewünschten Zahlenbereich transformiert werden. | ||
Um einen Würfel zu simulieren kann man die von <code>Math.random()</code> generierten Werte zum Beispiel durch <code>(int) (Math.random()*6+1)</code> | Um einen Würfel zu simulieren, kann man die von <code>Math.random()</code> generierten Werte zum Beispiel durch <code>(int) (Math.random()*6+1)</code> in eine Ganzzahl zwischen 1 (inklusive) und 6 (inklusive) transformieren. Die Grafik | ||
in eine Ganzzahl zwischen 1 (inklusive) und 6 (inklusive) transformieren. | veranschaulicht, wie die einzelnen Rechnungen den Zahlenbereich Schritt für Schritt transformieren. | ||
[[Datei:JavaZufall.jpg|center|Transformation von Zufallszahlen in einen bestimmten ganzzahligen Bereich (Java).]] | [[Datei:JavaZufall.jpg|center|Transformation von Zufallszahlen in einen bestimmten ganzzahligen Bereich (Java).]] | ||
{{Info:Start}} | |||
Im letzten Schritt wird eine ''[[wikipedia:Typumwandlung|explizite Typumwandlung]]'' vorgenommen: eine erzwungene Konvertierung von einem Datentyp (<code>double</code>) in einen anderen (<code>int</code>). In diesem Fall bedeutet das, dass Java einfach die Nachkommastellen des double-Wertes "abschneidet" (es wird also nicht gerundet). Aus <code>4.866</code> wird <code>4</code>. | |||
{{Info:End}} | |||
Weitere Informationen zu Zufallszahlen (speziell in Java): | Weitere Informationen zu Zufallszahlen (speziell in Java): | ||
Zeile 24: | Zeile 25: | ||
Zur einfachen Generierung von Zufallszahlen stellt Java die Hilfsklasse <code>java.util.Random</code> zur Verfügung. | Zur einfachen Generierung von Zufallszahlen stellt Java die Hilfsklasse <code>java.util.Random</code> zur Verfügung. | ||
Die enthält eine Reihe von Methoden, die | Die enthält eine Reihe von Methoden, die unter anderem zufällige Ganzzahlen erzeugen. | ||
Weitere Details können in der [https://docs.oracle.com/javase/8/docs/api/java/util/Random.html Java API Dokumentation der Klasse Random] und im [http://openbook.rheinwerk-verlag.de/javainsel9/javainsel_12_005.htm#mje4ad6e86a12fd27d9d70730955ca4f9c Kapitel "Zufallszahlen erzeugen" in ''Java ist auch eine Insel''] nachgelesen werden. Das Beispiel unten zeigt die Verwendung der Klasse in einer einfachen Würfel-Klasse. | Weitere Details können in der [https://docs.oracle.com/javase/8/docs/api/java/util/Random.html Java API Dokumentation der Klasse Random] und im [http://openbook.rheinwerk-verlag.de/javainsel9/javainsel_12_005.htm#mje4ad6e86a12fd27d9d70730955ca4f9c Kapitel "Zufallszahlen erzeugen" in ''Java ist auch eine Insel''] nachgelesen werden. Das Beispiel unten zeigt die Verwendung der Klasse in einer einfachen Würfel-Klasse. |
Bearbeitungen