java用集合实现斗地主有序排列

复制代码
import java.util.*;

public class NewDouDiZhu {
    public static void main(String[] args) {
        HashMap<Integer,String> poker= new HashMap<>();
        //1.组装牌
        ArrayList<Integer> suoyin = new ArrayList<>();
        List<String> color =  new ArrayList<>();
        color.add("红桃");
        color.add("方块");
        color.add("黑桃");
        color.add("梅花");
        String[] number = {"2","A","K","Q","J","10","9","8","7","6","5","4","3"};
        int index = 0;
        for (String n:number){

            for (String c:color){
                poker.put(index,c+n);
                suoyin.add(index);
                index++;
            }
        }
        poker.put(index++,"大王");
        poker.put(index++,"小王");
        System.out.println(poker);
        System.out.println(suoyin);
        //2.洗牌
        Collections.shuffle(suoyin);
        System.out.println(suoyin);
        //3.发牌

        ArrayList<Integer> player1 = new ArrayList<>();
        ArrayList<Integer> player2 = new ArrayList<>();
        ArrayList<Integer> player3 = new ArrayList<>();
        ArrayList<Integer> dipai = new ArrayList<>();
        for (int n =0;n<suoyin.size();n++) {
            Integer in = suoyin.get(n);
            if (n>=50){
                dipai.add(in);
            }else if (n%3==0){
                player1.add(in);
            }else if (n%3==1){
                player2.add(in);
            }else if(n%3==2){
                player3.add(in);
            }
        }
        Collections.sort(player1);
        Collections.sort(player2);
        Collections.sort(player3);
        System.out.println("底牌是: "+dipai);
        System.out.println(player1);
        System.out.println(player3);
        System.out.println(player2);
        //看牌
        for (Integer s:player1){

            String pai =poker.get(s);
            System.out.print(pai+" ");
        }

    }


}
复制代码

 

posted @   叶青云  阅读(298)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示