Bienvenue au Blackjack! Votre première carte est Heart Q La première carte du croupier est un diamant A Votre deuxième carte est un cœur A La deuxième carte du croupier est un secret Votre point actuel est 11 Tirez-vous une carte? Oui: oui ou non: n
―――――――――――――――――――――――――― Je veux utiliser la méthode pour faire la partie du numéro du joueur 1, 2, 3 ...
Bienvenue au Blackjack! Votre 0ème carte est le Q du cœur La première carte du croupier est un diamant A Votre 0ème carte est A of Heart La deuxième carte du croupier est un secret Votre point actuel est 11 Tirez-vous une carte? Oui: oui ou non: 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("Bienvenue au Blackjack!");
List<Integer> deck = new ArrayList<Integer>(52);
Deck.shuffleDeck(deck); //Appelez la méthode
//Afficher les cartes mélangées. Pour devac
// for(Integer i : deck) {
// System.out.println(i);
// }
List<Integer> player = new ArrayList<>(); //Créer la liste des mains d'un joueur
List<Integer> dealer = new ArrayList<>(); //Créer la liste des mains d'un concessionnaire
//Le croupier joueur tire deux cartes
player.add(deck.get(0));
dealer.add(deck.get(1));
player.add(deck.get(2));
dealer.add(deck.get(3));
//Afficher les points dans la main du joueur / croupier
System.out.println("Votre"
+ Player.getPlayerHands() + "La première carte est"
+ Deck.toDescription(player.get(0)));
System.out.println("La première carte du croupier est"
+ Deck.toDescription(dealer.get(0)));
System.out.println("Votre"
+ Player.getPlayerHands() + "La première carte est"
+ Deck.toDescription(player.get(1)));
System.out.println("La deuxième carte du croupier est un secret");
//Points cumulés des joueurs et des revendeurs
int playerPoint = Deck.sumPoint(player);
int dealerPoint = Deck.sumPoint(dealer);
System.out.println("Votre point actuel est"
+ playerPoint + "est");
//Phase au cours de laquelle le joueur pioche une carte
while (true) {
System.out.println("Tirez-vous une carte? Oui:y or No:n");
//Accepte l'entrée au clavier et l'assigne à la variable str
Scanner scan = new Scanner(System.in);
String str = scan.next();
if ("n".equals(str)) {
break;
} else if ("y".equals(str)) {
//Ajoutez 1 carte du deck à votre main
player.add(deck.get(Deck.deckCount));
//Avancez d'un deck et d'une main
Deck.deckCount++;
Player.setPlayerHands(Player.getPlayerHands() + 1);
System.out.println("votre"
+ Player.getPlayerHands() + "La première carte est"
+ Deck.toDescription(player.get(Player.getPlayerHands() - 1)));
playerPoint = Deck.sumPoint(player);
System.out.println("Le total actuel est" + playerPoint);
//Vérification de l'éclatement du joueur
if (Deck.isBusted(playerPoint)) {
System.out.println("Malheureusement, il a éclaté. Le croupier gagne.");
return;
}
} else {
System.out.println("Votre contribution est"
+ str + "est. Entrez y ou n.");
}
}
//Phase pour piocher des cartes jusqu'à ce que le croupier en ait 17 ou plus en main
while (true) {
//Pause si vous en avez 17 ou plus en main
if (dealerPoint >= 17) {
break;
} else {
//Ajoutez 1 carte du deck à votre main
dealer.add(deck.get(Deck.deckCount));
//Avancer d'un pont
Deck.deckCount++;
//Calculez le total des points du concessionnaire
dealerPoint = Deck.sumPoint(dealer);
//Vérification de l'éclatement du concessionnaire
if (Deck.isBusted(dealerPoint)) {
System.out.println("Le croupier a éclaté. Vous gagnez!");
return;
}
}
}
//Comparer les points
System.out.println("Votre point est" + playerPoint);
System.out.println("Le point du concessionnaire est" + dealerPoint);
if (playerPoint == dealerPoint) {
System.out.println("C'est un tirage au sort.");
} else if (playerPoint > dealerPoint) {
System.out.println("A gagné!");
} else {
System.out.println("perdu···");
}
}
}
package blackjack;
import java.util.Collections;
import java.util.List;
public class Deck {
static int deckCount; //Définir un deckCount variable qui enregistre la progression du deck
//Une méthode pour mettre une valeur dans le deck et le mélanger
public static void shuffleDeck(List<Integer> deck) {
//1 sur la liste-Remplacez 52 numéros de série
for (int i = 1; i <= 52; i++) {
deck.add(i);
}
//Mélangez votre deck
Collections.shuffle(deck);
}
//Méthode pour calculer le total actuel des points
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;
}
//Une méthode qui remplace le nombre de jeux par le nombre de cartes
private static int toNumber(int cardNumber) {
int number = cardNumber % 13;
if (number == 0) {
number = 13;
}
return number;
}
//Méthode J qui convertit le numéro de série du deck en points pour le calcul du score/Q/K est 10
public static int toPoint(int num) {
if (num == 11 || num == 12 || num == 13) {
num = 10;
}
return num;
}
//Une méthode qui remplace le nombre de decks par la chaîne (rank) de (soo)
public static String toDescription(int cardNumber) {
String rank = toRank(toNumber(cardNumber));
String suit = toSuit(cardNumber);
return suit + "de" + rank;
}
//Méthode pour convertir le numéro de carte en rang (A,J,Q,K etc.)
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;
}
}
//Une méthode pour remplacer le nombre de ponts par de la suie
private static String toSuit(int cardNumber) {
switch ((cardNumber - 1) / 13) {
case 0:
return "club";
case 1:
return "diamant";
case 2:
return "cœur";
case 3:
return "bêche";
default:
return "Exception";
}
}
//Une méthode pour déterminer si votre main éclate
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; //Définir la variable playerHands qui enregistre le nombre de cartes dans la main du joueur
public static int getPlayerHands() {
return playerHands;
}
public static void setPlayerHands(int playerHands) {
Player.playerHands = playerHands;
}
}
J'ai cherché sur Internet, mais j'ai senti la limite. .. .. S'il vous plaît, apprenez-moi si vous le souhaitez.
Recommended Posts