Zufallszahl generieren

Extremefall

Bekanntes Mitglied
Hallo,
ich würde gerne ein Blackjackspiel erstellen.
Ich stelle es mir so vor, dass die einzelnen Karten einer Zahl zugeordnet werden. Die Zahlen werden vorher festgelegt, vielleicht durch ein Array. Wenn man nun auf einen Button klickt, wird eine zufällige Zahl generiert und die Karte dazu aufgedeckt. Natürlich muss die Zahl aus dem Array gelöscht werden, nur wie bekomme ich es hin?

Oder sollte ich vielleicht lieber eine Textdatei erstellen in diesem Schema:
sieben_karo, sieben_kreuz, sieben_herz, sieben_piek

Davon dann zufällig einen Wert auswählen und diesen dann aus der Textdatei löschen, damit er nicht doppelt gewählt wird? Wäre das möglich? Nur wie kann man dann zufällig einen String Wert aus der Textdatei wählen? Was wäre eine gute Möglichkeit? Oder ist es mit Zahlen besser? Dann könnte man das doch über ein Array oder eine Textdatei machen?
 

Ark

Top Contributor
Alternatives Vorgehen: Du erzeugst einen gemischten Kartenstapel mit n*52 Karten, indem du n-Mal alle Karten geordnet(!) "erzeugst". Jeder erzeugten Karte weist du dann zufällig einen von n*52 vielen Positionen im gemischten (und zu Beginn leeren) Kartenstapel zu. Wenn du zufälligerweise einen bereits belegten Platz erwischst, ziehst du entweder noch einmal zufällig einen neuen Platz oder wählst den von dieser Position aus nächsten oder vorherigen freien Platz zu.

Ark
 

Landei

Top Contributor
Ich stimme meinem Vorredner zu, es ist am einfachsten, einen geordneten Stapel zu erzeugen und dann durchzumischen. java.util.Collections hat sogar schon eine shuffle-Methode.
 

Marco13

Top Contributor
Häm? Ist es jetzt zu warm oder...? Geht es nur um das ziehen (und Entfernen) zufälliger Karten aus einer Liste? Was spricht da gegen
Code:
List<Card> list = create(...);
Collections.shuffle(list);
Card c0 = list.remove(0);
Card c1 = list.remove(0);
Card c2 = list.remove(0);
?
 

Extremefall

Bekanntes Mitglied
Wäre es aber nicht rein theoretisch auch so möglich:

Es gibt 52 Zahlen. Davon wird per Zufall eine ausgewählt. Dieses Zahl wird dann in ein Textdokument geschrieben. Bei der nächsten Auswahl der Zufallszahl wird das Textdokument mit den bereits genutzten karten ausgelesen und wenn die neue Zufallszahl ungleich der alten ist, wird die Karte aufgedeckt. Wäre das nicht eine genauso gute Alternative? Denn in der Umsetzung müsste es nicht schwieriger sein.

@Marco: Das ist natürlich auch eine gute Möglichkeit. Ich denke, damit werde ich es probieren. Ist wohl am einfachsten.
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
Javafan01 Deklarieren einer Math.random() Zufallszahl Allgemeine Java-Themen 16
O Zufallszahl mit Priorität Allgemeine Java-Themen 4
R Zufallszahl nur einmal Allgemeine Java-Themen 3
K double Zufallszahl Allgemeine Java-Themen 6
F Zufallszahl erzeugen Allgemeine Java-Themen 4
F Zugreifen auf vorher erzeugte Zufallszahl! Allgemeine Java-Themen 4
S zufallszahl zwischen -1 und 1 Allgemeine Java-Themen 9
LimDul Eindeutige ID (ala UUID) generieren als numerisch, maximal 16 Stellen Allgemeine Java-Themen 11
R Farbe zu einem Eckpunkt generieren Allgemeine Java-Themen 0
J Sudoku generieren Schwierigkeitsgrad Allgemeine Java-Themen 3
G Aus JTextField Zahlen auslesen und random generieren Allgemeine Java-Themen 10
D Mail aus GUI generieren Allgemeine Java-Themen 2
J Primzahlen generieren Allgemeine Java-Themen 6
M Serien- / Werksnummern generieren Allgemeine Java-Themen 7
K Java QUIZ-Spiel Fragen und Antworten generieren?! Allgemeine Java-Themen 5
N Zahl mit bestimmter Länge und nur bestimmten Zahlen generieren lassen Allgemeine Java-Themen 7
M Zufälligen String generieren und alle 5 Minuten ändern Allgemeine Java-Themen 2
T Geschwindigkeit beim Generieren erhöhen? Allgemeine Java-Themen 7
DStrohma Verschlüsselung: SALT aus Passwort generieren? Allgemeine Java-Themen 3
darekkay (JUnit) Testdaten generieren - Framework? Allgemeine Java-Themen 2
L Generieren Zufallsdaten aus CSV dateien Allgemeine Java-Themen 11
N String generieren Allgemeine Java-Themen 3
J Hash aus Verzeichniss generieren Allgemeine Java-Themen 2
Eldorado Barcodes mit statischer Breite generieren Allgemeine Java-Themen 3
M aus 3 BufferedImages 1 generieren Allgemeine Java-Themen 5
M Shapes mit abgerundeten Ecken generieren Allgemeine Java-Themen 2
T Zufallszahlen generieren und dabei eine Zahl weglassen Allgemeine Java-Themen 4
S Mittels eines Applets Bilder generieren die in einer Webseite angezeigt werden..? Allgemeine Java-Themen 8
MQue List<String> aus List<Object> generieren Allgemeine Java-Themen 2
V Einfache toString() generieren? Allgemeine Java-Themen 6
O .jar Files - Tools zum generieren Allgemeine Java-Themen 25
B PDF generieren. Problem mit PipedStreams. Allgemeine Java-Themen 4
G UML aus Commandline generieren Allgemeine Java-Themen 9
M nicht gleichverteilte Zufallszahlen generieren Allgemeine Java-Themen 6
B Mit Java Powerpoint Reporte und PDF generieren Allgemeine Java-Themen 9
lumo "Exzessiv" dynamisches generieren Allgemeine Java-Themen 6
B Schlüssel von Java automatisch generieren lassen. Allgemeine Java-Themen 4
T Einfachen Ton in Java generieren Allgemeine Java-Themen 4
B String generieren Allgemeine Java-Themen 4
S Datei aller möglich encodings generieren Allgemeine Java-Themen 2
G Char-zufällig-generieren Allgemeine Java-Themen 11
H RTF zu Word-Dokument generieren Allgemeine Java-Themen 5
B Namen eines Objekts generieren? Allgemeine Java-Themen 4
C Laufende Nummer generieren Allgemeine Java-Themen 4
S Dynamisches Feld generieren. Allgemeine Java-Themen 10
N Transaktionsnummer (Tan) generieren? Allgemeine Java-Themen 5

Ähnliche Java Themen

Neue Themen


Oben