【详解】斗地主随机发牌项目

目录

前言:

1.初始化牌

 2.洗牌

3.揭牌

总代码:

Card类:

CardGame类:

Main类:

结语:


前言:

斗地主是全国范围内的一种桌面游戏,本节我们来实现一下斗地主中的简单初始化牌、发牌和看牌功能。按照斗地主的规则,完成洗牌发牌的动作。具体规则为使用 52 张牌(不含大小王)打乱顺序,3 个玩家参与游戏,3 人交替摸牌,每人 5(可以自己修改) 张牌。

实现思路步骤:

1.初始化牌

2.洗牌

3.揭牌

4.剩余牌

效果展示:

实现如下:

1.初始化牌

牌有数字和花色,故我们要自己创建一个类来进行操作。toString方法要记得重写不然后面println不能直接输出。

public class Card{
    public String suit;//花色
    public int num;
    public Card(String suit,int num){
        this.suit = suit;
        this.num = num;
    }
    @Override
    public String toString(){
        return suit+" "+num;
    }
}

用suits来存储花色。List<Card>可以看成是一个存储Card的一维数组。利用java自带的ArrayLIst的add函数实现尾插。 

public static final String[] suits = {"♥","♣","♦","♠"};
    //初始化牌
    public List<Card> buyCard(){
        List<Card> cardList = new ArrayList<>();
        for(int i = 0;i < 4;i++){
            for(int j = 1;j <= 13;j++){
                String suit = suits[i];
                Card card = new Card(suit,j);
                cardList.add(card);
            }
        }
        return cardList;
    }

 效果如下:

评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值