斗地主发牌算法

写着玩

package poker;

import java.util.Random;

/**
 * Created by 小林未郁 on 2016/8/11.
 */

public class dealCards {

    static String[] flowerColor = {"黑桃", "红桃", "方片", "梅花"};
    static String[] number = {"A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K"};
    static String[] cards = new String[54];

    public static void main(String[] args) {
        new dealCards_fuck(flowerColor, number, cards);
        new Upset(cards);
        new DistributeCards(cards);


    }

}

//排序,像新牌一样
class dealCards_fuck {
    dealCards_fuck(String[] flowerColor, String[] number, String[] cards) {
        cards[52] = "小王";
        cards[53] = "大王";


        for (int i = 0; i < 52; i++) {
            cards[i] = flowerColor[i % 4] + number[i / 4];
        }

    }
}


//洗牌
class Upset {
    Upset(String[] fuck) {

        for (int t = 0; t < 50; t++) {
            Random rand = new Random();
            for (int i = 0; i < fuck.length; i++) {
                int bitch = 0;

                for (; ; ) {
                    bitch = i + rand.nextInt(54 - i);
                    break;
                }

                String temp = fuck[bitch];
                fuck[bitch] = fuck[i];
                fuck[i] = temp;
            }
        }

    }


}

//发牌
class DistributeCards {
    String[] p1 = new String[17];
    String[] p2 = new String[17];
    String[] p3 = new String[17];

    DistributeCards(String[] fuck) {
        for (int i = 0; i < 17; i++) {
            p1[i] = fuck[i];
        }
        for (int i = 17, t = 0; i < 34; i++, t++) {
            p2[t] = fuck[i];
        }
        for (int i = 34, t = 0; i < 51; i++, t++) {
            p3[t] = fuck[i];
        }
        System.out.println("玩家1:");
        new show(p1);
        System.out.println();

        System.out.println("玩家2:");
        new show(p2);
        System.out.println();

        System.out.println("玩家3:");
        new show(p3);
        System.out.println();

        System.out.println("三张底牌");
        for (int i = 51; i < 54; i++) {
            System.out.println(fuck[i]);
        }

    }
}


//打印牌
class show {
    show(String[] fuck) {
        for (int i = 0; i < fuck.length; i++) {
            System.out.println(fuck[i]);
        }
    }
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值