简易斗地主代码实现,来和舍友来一把斗地主?

news/2024/12/29 13:55:44/

用java程序模拟斗地主,随机发牌。


import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.TreeSet;public class PokerDemo {public static void main(String[] args) {//用hashmap存编号,和牌HashMap<Integer,String> hm = new HashMap<>();//创建一个数组来存储编号,每一个编号代表一张牌ArrayList<Integer> num = new ArrayList<>();//创建花色 和 牌 String[] hs = {"♠","♥","♦","♣"};String[] bh = {"3","4","5","6","7","8","9","10","J","Q","K","A","2"};//存储牌和数组 从0开始网hashmap里面存储编号,并存储对应的牌,同时往arraylist里面存储编号int index = 0;for (String s : bh) {for (String h : hs) {num.add(index);hm.put(index, h + s);index++;}}num.add(index);hm.put(index,"小王");index++;num.add(index);hm.put(index,"大王");//利用treeset的排序,用其接收TreeSet<Integer> user1 = new TreeSet<>();TreeSet<Integer> user2 = new TreeSet<>();TreeSet<Integer> user3 = new TreeSet<>();TreeSet<Integer> dp =  new TreeSet<>();//用collections中的shuffle()方法打乱num中的数字 打乱排序Collections.shuffle(num);//发牌for(int i= 0;i <num.size();i++){int poker = num.get(i);if (i>=num.size()-3){dp.add(poker);}else if (i%3 == 0){user1.add(poker);}else if(i%3==1){user2.add(poker);}else{user3.add(poker);}}//利用自定义方法显示手中的牌LookPoker("用户1",user1,hm);LookPoker("用户2",user2,hm);LookPoker("用户3",user3,hm);LookPoker("底牌",dp,hm);}public static void LookPoker(String name ,TreeSet<Integer> user,HashMap<Integer,String> hashMap){System.out.print(name + "的牌: ");for (Integer ss : user){System.out.print(hashMap.get(ss)+" ");}System.out.println();}
}

运行结果:
在这里插入图片描述


http://www.ppmy.cn/news/677826.html

相关文章

四人斗地主 服务端 + 客户端 android 源码

这本来是同事之间玩的扑克游戏&#xff0c;后来大家都离职了&#xff0c;凑不上一起来打牌了&#xff0c;于是抱着玩的兴趣&#xff0c;开发在线玩法。 非常适合源码学习或小游戏开发&#xff0c;本人也是第一次去开发这种游戏&#xff0c;东拼西凑&#xff0c;大家凑合着看。…

【斗地主代码分析】(2)-斗地主逻辑-客户端与服务端

前言 看了看这个代码感觉没什么可讲的&#xff0c;没有什么独特的Unity技巧&#xff0c;都是斗地主的业务逻辑&#xff0c;这一片简单分析一下吧。 不过这个Demo包含前后端&#xff0c;可以了解下前后端的职责和如何交互的。总结一下就是前端负责界面展示&#xff0c;后端负责…

机器学习之朴素贝叶斯(Naive Bayes)

1 朴素贝叶斯算法介绍 朴素贝叶斯是经典的机器学习算法之一&#xff0c;也是为数不多的基于概率论的分类算法。朴素贝叶斯分类器(Naive Bayes Classifier 或 NBC)发源于古典数学理论&#xff0c;有着坚实的数学基础&#xff0c;以及稳定的分类效率&#xff0c;是应用最为广泛的…

python的线程

threading 模块 两种方式&#xff1a;线程处理函数 与 继承 threading.Thread 类 使用线程处理函数创建多线程的用法类似于 thread 模块创建多线程 使用继承 threading.Thread 类实现多线程的本质就是重写 threading.Thread 类中的 构造函数 与 run 方法 # (1) 线程处理函数 …

车辆二桥制动平衡率 不合格

车辆年检时提示 《车辆二桥制动平衡率》 不合格 1、更换刹车片 2、到修理厂进一步检查 经验来源&#xff1a;本人亲自检验10年老车出的问题&#xff0c;更换刹车片后解决。 个人理解&#xff1a;制动平衡率指的是两侧轮胎刹车片厚度不同&#xff0c;制动不均匀&#xff0c;可…

电机刹车

电机刹车的作用是让pwm引脚断开不产生pwm&#xff0c;然后电机会由于楞次定律减速刹车

刹车电机

刹车电机又称制动电机是指普通电机风扇部位加装电磁刹车&#xff0c;它的用途非常广泛&#xff0c;可以用于瞬间停机的时候降低电机的惯性和冲击力&#xff0c;还可以用于上下运动的停车或者垂直起吊的停车&#xff0c;从而避免电机在停机是向下溜。所以刹车有分为单面刹车和双…

为什么刹车热了会失灵_刹车片过热为什么会导致刹车失灵?

展开全部 还有就是高温会引起刹车油的汽化现象&#xff0c;就是平时说的为什么刹车的时32313133353236313431303231363533e59b9ee7ad9431333431366265候要踩两脚刹车&#xff0c;力量才好点。就是为了排出刹车油管里的空气。还有调试刹车的时候&#xff0c;给油管排空气也是一个…