IDEA-集合综合案例(斗地主)(无序)

本文通过IDEA详细介绍了如何创建斗地主游戏的牌局模拟。首先,利用数组/集合存储54张牌,包括特殊牌王;接着,通过集合工具类的shuffle方法实现洗牌;然后,按照规则将牌分配给三位玩家和底牌;最后,通过遍历集合展示玩家和底牌的牌面。整个过程展示了集合操作在游戏逻辑中的应用。
摘要由CSDN通过智能技术生成

斗地主综合案例
1.准备54张牌,存储的一个集合
特殊牌:大王,小王
其他52张牌:
定义一个数组/集合,存储四种花色(♠、❤、♣、◇)
定义一个数组/集合,存储13个序号:2.A.K…3
循环嵌套遍历两个数组/集合,组装52张牌,
例如:♠2,❤A,…♣3
2.洗牌
使用集合工具类Collection的方法
static void shuffle(List<?> list )使用指定的随机源对指定列表进行置换
会随机打乱集合中元素的顺序
3.发牌
要求:一人17张牌,剩余三张作为底牌,一人一张轮流发牌(集合的索引%3)。
定义4个集合,存储3个玩家的牌和底牌。
索引%2,有两个值(0,1)0%2=0,1%2=1,2%2=0,3%2=1
索引%2,有两个值(0,1,2)0%=0,1%3=1,2%3=2,3%3=0
索引 >=51,给底牌发牌
4.看牌
直接打印集合,或者遍历存储玩家和底牌的集合

import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;

/*
斗地主综合案例;
    1.准备牌
    2.洗牌
    3.发牌
    4.看牌

 */
public class DouDiZhu {
   
    public static void main(String[] args) {
   
        //1.准备牌
        //定义一个存储54张牌的ArrayList集合,泛型使用String
        ArrayList<String> poker = new ArrayList<>();
        //定义两个数组,一个数组存储牌的花色,一个数组存储拍的序号
        String[
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值