码迷,mamicode.com
首页 > 其他好文 > 详细

54张牌模拟斗地主

时间:2015-04-19 01:01:35      阅读:115      评论:0      收藏:0      [点我收藏+]

标签:

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] + " ");
        }

    }
}

 

54张牌模拟斗地主

标签:

原文地址:http://www.cnblogs.com/liunanjava/p/4436499.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!