54张牌模拟斗地主
54张牌模拟斗地主
package demo; import java.util.Random; /** * 54张牌洗牌和发牌 * */ public class Puker { public static void main(String[] args) { Random random = new Random(); // 初始化数组 String[] puker = { "♠A", "♠2", "♠3", "♠4", "♠5", "♠6", "♠7", "♠8", "♠9", "♠10", "♠J", "♠Q", "♠K", "♥A", "♥2", "♥3", "♥4", "♥5", "♥6", "♥7", "♥8", "♥9", "♥10", "♥J", "♥Q", "♥K", "♣A", "♣2", "♣3", "♣4", "♣5", "♣6", "♣7", "♣8", "♣9", "♣10", "♣J", "♣Q", "♣K", "♦A", "♦2", "♦3", "♦4", "♦5", "♦6", "♦7", "♦8", "♦9", "♦10", "♦J", "♦Q", "♦K", "大王", "小王" }; // 声明3个玩家了和保存的底牌 String[] p1 = new String[17]; String[] p2 = new String[17]; String[] p3 = new String[17]; String[] bluff = new String[3]; // 模拟洗牌1000次 for (int i = 0; i < 1000; i++) { int r1 = random.nextInt(puker.length); int r2 = random.nextInt(puker.length); String tmp = puker[r1]; puker[r1] = puker[r2]; puker[r2] = tmp; } // 发牌 int index = 0; for (int i = 0; i < puker.length;) { if (i < 3) { //先保留3张底牌 bluff[i] = puker[i++]; }else { //发牌给3个玩家 p1[index] = puker[i++]; p2[index] = puker[i++]; p3[index] = puker[i++]; index++; } } System.out.println("底牌是:"); for (int i = 0; i < bluff.length; i++) { System.out.print( bluff[i]+" "); } System.out.println("\n玩家1的牌是:"); for (int i = 0; i < p1.length; i++) { System.out.print(p1[i] + " "); } System.out.println("\n玩家2的牌是:"); for (int i = 0; i < p2.length; i++) { System.out.print(p2[i] + " "); } System.out.println("\n玩家3的牌是:"); for (int i = 0; i < p3.length; i++) { System.out.print(p3[i] + " "); } } }