Java实现斗地主发牌

@Java实现斗地主发牌

Java实现斗地主发牌

简单的用java实现斗地主的发牌过程

public static void main(String[] args) {
        //System.out.println(Arrays.toString(getpai()));
        String[]str=getpai();
        //System.out.println(Arrays.toString(str));
        xipai(str);
        //System.out.println(Arrays.toString(str));
        String[]p1=new String[25];
        String[]p2=new String[25];
        String[]p3=new String[25];
        String[]p4=new String[25];
        String[]dp=new String[8];
        for (int i=0;i<p1.length;i++){
            p1[i]=fapai(str);
            p2[i]=fapai(str);
            p3[i]=fapai(str);
            p4[i]=fapai(str);
        }
        for (int i=0;i<8;i++){
            dp[i]=fapai(str);
        }
        System.out.println("p1="+Arrays.toString(p1));
        System.out.println("p2="+Arrays.toString(p2));
        System.out.println("p3="+Arrays.toString(p3));
        System.out.println("p4="+Arrays.toString(p4));
        System.out.println("dp="+Arrays.toString(dp));
    }
    //生成牌
    public static String[] getpai(){
        //总牌数
        String[] pai=new String[108];
        //定义花色
        String[] p1={"♠","♥","♣","♦",};
        //定义牌
        String [] p2= {"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
        //定义存储下标
        int index=0;
        for (int i=0;i< p1.length;i++){        //遍历花色
            for (int j=0;j< p2.length;j++){    //遍历牌
                pai[index++]=p1[i]+p2[j];      //存入牌组中
            }
        }
        pai[index++]="小王";
        pai[index++]="大王";
        //至此生成一副牌,然后变成两幅
        for (int i=0;i< pai.length/2;i++){
            pai[index++]=pai[i];
        }
        return pai;
    }
    //洗牌
    public static void xipai(String[] str){
        Random random = new Random();
        for (int i=0;i<1000;i++){
            int index1= random.nextInt(str.length);
            int index2= random.nextInt(str.length);
            String tmp=str[index1];
            str[index1]=str[index2];
            str[index2]=tmp;
        }
    }
    //发牌
    public static String fapai(String[] pai){
        Random random = new Random();
        int index= random.nextInt();
        do {
             index=random.nextInt(pai.length);
        }while (pai[index]=="0");
         String str=pai[index];
         pai[index]="0";
         return str;
    }

献丑了
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值