Willkommen beim Blackjack! Ihre erste Karte ist Herz Q. Die erste Karte des Dealers ist ein Diamant A. Ihre zweite Karte ist ein Herz A. Die zweite Karte des Dealers ist ein Geheimnis Ihr aktueller Punkt ist 11 Ziehst du eine Karte? Ja: y oder Nein: n
―――――――――――――――――――――――――――― Ich möchte die Methode verwenden, um den Teil der Nummer 1, 2, 3 des Spielers zu machen ...
Willkommen beim Blackjack! Ihre 0. Karte ist das Q des Herzens Die erste Karte des Dealers ist ein Diamant A. Ihre 0. Karte ist A of Heart Die zweite Karte des Dealers ist ein Geheimnis Ihr aktueller Punkt ist 11 Ziehst du eine Karte? Ja: y oder Nein: n
package blackjack;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class MainGame {
public static void main(String[] args) {
System.out.println("Willkommen beim Blackjack!");
List<Integer> deck = new ArrayList<Integer>(52);
Deck.shuffleDeck(deck); //Rufen Sie die Methode auf
//Mischkarten zeigen. Für Devac
// for(Integer i : deck) {
// System.out.println(i);
// }
List<Integer> player = new ArrayList<>(); //Erstellen Sie die Handliste eines Spielers
List<Integer> dealer = new ArrayList<>(); //Erstellen Sie eine Händlerhandliste
//Der Spielerhändler zieht zwei Karten
player.add(deck.get(0));
dealer.add(deck.get(1));
player.add(deck.get(2));
dealer.add(deck.get(3));
//Punkte in der Hand des Spielers / Dealers anzeigen
System.out.println("Ihre"
+ Player.getPlayerHands() + "Die erste Karte ist"
+ Deck.toDescription(player.get(0)));
System.out.println("Die erste Karte des Dealers ist"
+ Deck.toDescription(dealer.get(0)));
System.out.println("Ihre"
+ Player.getPlayerHands() + "Die erste Karte ist"
+ Deck.toDescription(player.get(1)));
System.out.println("Die zweite Karte des Dealers ist ein Geheimnis");
//Sammeln Sie Spieler- und Dealer-Punkte
int playerPoint = Deck.sumPoint(player);
int dealerPoint = Deck.sumPoint(dealer);
System.out.println("Ihr aktueller Punkt ist"
+ playerPoint + "ist");
//Phase, in der der Spieler eine Karte zieht
while (true) {
System.out.println("Ziehst du eine Karte? Ja:y or No:n");
//Akzeptiert Tastatureingaben und weist sie der Variablen str zu
Scanner scan = new Scanner(System.in);
String str = scan.next();
if ("n".equals(str)) {
break;
} else if ("y".equals(str)) {
//Füge deiner Hand 1 Karte vom Stapel hinzu
player.add(deck.get(Deck.deckCount));
//Ein Deck und eine Hand vorrücken
Deck.deckCount++;
Player.setPlayerHands(Player.getPlayerHands() + 1);
System.out.println("Ihre"
+ Player.getPlayerHands() + "Die erste Karte ist"
+ Deck.toDescription(player.get(Player.getPlayerHands() - 1)));
playerPoint = Deck.sumPoint(player);
System.out.println("Die aktuelle Summe ist" + playerPoint);
//Spieler Burst Check
if (Deck.isBusted(playerPoint)) {
System.out.println("Leider platzte es. Der Dealer gewinnt.");
return;
}
} else {
System.out.println("Ihre Eingabe ist"
+ str + "ist. Geben Sie y oder n ein.");
}
}
//Phase zum Ziehen von Karten, bis der Dealer 17 oder mehr auf der Hand hat
while (true) {
//Brechen Sie, wenn Sie 17 oder mehr auf der Hand haben
if (dealerPoint >= 17) {
break;
} else {
//Füge deiner Hand 1 Karte vom Stapel hinzu
dealer.add(deck.get(Deck.deckCount));
//Ein Deck vorrücken
Deck.deckCount++;
//Berechnen Sie die Gesamtpunkte des Händlers
dealerPoint = Deck.sumPoint(dealer);
//Händler Burst Check
if (Deck.isBusted(dealerPoint)) {
System.out.println("Der Händler ist geplatzt. Du gewinnst!");
return;
}
}
}
//Punkte vergleichen
System.out.println("Ihr Punkt ist" + playerPoint);
System.out.println("Der Punkt des Händlers ist" + dealerPoint);
if (playerPoint == dealerPoint) {
System.out.println("Es ist eine Zeichnung.");
} else if (playerPoint > dealerPoint) {
System.out.println("Gewonnen!");
} else {
System.out.println("hat verloren···");
}
}
}
package blackjack;
import java.util.Collections;
import java.util.List;
public class Deck {
static int deckCount; //Definieren Sie eine Variable deckCount, die den Fortschritt des Decks aufzeichnet
//Eine Methode, um einen Wert in das Deck zu setzen und ihn zu mischen
public static void shuffleDeck(List<Integer> deck) {
//1 auf der Liste-Ersetzen Sie 52 Seriennummern
for (int i = 1; i <= 52; i++) {
deck.add(i);
}
//Mische dein Deck
Collections.shuffle(deck);
}
//Methode zur Berechnung der aktuellen Gesamtpunkte
public static int sumPoint(List<Integer> list) {
int sum = 0;
for (int i = 0; i < list.size(); i++) {
sum = sum + toPoint(toNumber(list.get(i)));
}
return sum;
}
//Eine Methode, die die Anzahl der Decks durch die Anzahl der Karten ersetzt
private static int toNumber(int cardNumber) {
int number = cardNumber % 13;
if (number == 0) {
number = 13;
}
return number;
}
//Methode J, die die Seriennummer des Decks in Punkte für die Punkteberechnung umwandelt/Q/K ist 10
public static int toPoint(int num) {
if (num == 11 || num == 12 || num == 13) {
num = 10;
}
return num;
}
//Eine Methode, die die Anzahl der Decks durch die (Rang-) Zeichenfolge von (soo) ersetzt.
public static String toDescription(int cardNumber) {
String rank = toRank(toNumber(cardNumber));
String suit = toSuit(cardNumber);
return suit + "von" + rank;
}
//Methode zur Umwandlung der Kartennummer in Rang (A.,J,Q,K usw.)
private static String toRank(int number) {
switch (number) {
case 1:
return "A";
case 11:
return "J";
case 12:
return "Q";
case 13:
return "K";
default:
String str = String.valueOf(number);
return str;
}
}
//Eine Methode, um die Anzahl der Decks durch Ruß zu ersetzen
private static String toSuit(int cardNumber) {
switch ((cardNumber - 1) / 13) {
case 0:
return "Verein";
case 1:
return "Diamant";
case 2:
return "Herz";
case 3:
return "Spaten";
default:
return "Ausnahme";
}
}
//Eine Methode, um festzustellen, ob Ihre Hand platzt
public static boolean isBusted(int point) {
if (point <= 21) {
return false;
} else {
return true;
}
}
}
package blackjack;
public class Player extends Deck {
private static int playerHands; //Definieren Sie die Variable playerHands, die die Anzahl der Karten auf der Hand des Spielers aufzeichnet
public static int getPlayerHands() {
return playerHands;
}
public static void setPlayerHands(int playerHands) {
Player.playerHands = playerHands;
}
}
Ich habe es im Internet nachgeschlagen, aber ich habe die Grenze gespürt. .. .. Bitte bringen Sie mir bei, wenn Sie möchten.
Recommended Posts