package 斗地主;
import java.util.*;
/*** 有序版本* 1.准备牌* 2.洗牌* 3.发牌* 4.排序* 5.看牌* */
public class Pak2 {public static void main(String[] args) {//1.准备牌//创建一 个Map集合, 存储牌的索引和组装好的牌HashMap<Integer,String> poker = new HashMap<>( );//创建一 个List集合,存储牌的索引ArrayList<Integer> pokerIndex = new ArrayList<>();//定义两个集合,存储牌的序号List<String> colors = List.of("♠","❤" ,"♣","♦");List<String> numbers = List.of("2","A","K","Q","J","10","9","8","7","6","5","4","3");//把大王和小王存储到集合中int index = 0;poker.put(index , "大王");pokerIndex.add(index);index++;poker.put(index , "小王");pokerIndex.add(index);index++;//循环嵌套遍历两个集合,组装52张牌,储存到集合中for(String number : numbers){for(String color : colors){poker.put(index , color+number);pokerIndex.add(index);index++;}}//2.洗牌//使用Collections中的shuffle(List)方法Collections.shuffle(pokerIndex);//3.发牌//定义4个集合,储存玩家的索引和底牌索引ArrayList<Integer> player01 = new ArrayList<>();ArrayList<Integer> player02 = new ArrayList<>();ArrayList<Integer> player03 = new ArrayList<>();ArrayList<Integer> dipai = new ArrayList<>();for(int i = 0 ; i < pokerIndex.size() ; i++){int in = pokerIndex.get(i);if(i >= 51){dipai.add(in);}else if(i % 3 == 0){player01.add(in);}else if (i % 3 == 1){player02.add(in);}else {player03.add(in);}}//4.排序//使用Collections中的sort方法Collections.sort(player01);Collections.sort(player02);Collections.sort(player03);Collections.sort(dipai);lookPoker("黄老怪" , poker , player01);lookPoker("蔡老怪" , poker , player02);lookPoker("赵老怪" , poker , player03);lookPoker("底牌" , poker , dipai);}/*** 定义一个看牌的方法* 参数:*      String name*      HashMap<Integer , String> poker*      ArrayList<Integer> list* */public static void lookPoker(String name , HashMap<Integer , String> poker , ArrayList<Integer> player){//输出玩家System.out.print(name+": ");Iterator<Integer> indexs = player.iterator();while(indexs.hasNext()){System.out.print(poker.get(indexs.next()) + ",");}System.out.println();}}

java-斗地主无界面有序版相关推荐

  1. Java斗地主小游戏有序版

    题目 斗地主综合案例:有序版 1.准备牌:大王小王 52张牌:循环嵌套遍历两个集合,组装52张牌 可以使用Map<Integer,String>集合储存牌的索引+组装好的牌.创建一个Lis ...

  2. java游戏斗地主_Java斗地主小游戏有序版

    斗地主综合案例:有序版 1.准备牌:大王小王 52张牌:循环嵌套遍历两个集合,组装52张牌 可以使用Map集合储存牌的索引+组装好的牌.创建一个List集合存储牌的索引 2.洗牌:使用Collecti ...

  3. java浏览器无界面后台截屏工具

    不同于上一篇文章中所讲到的通过客户端浏览器将 HTML 转 canvas 再生成图片的方式,本次记录的内容为服务器端(Windows Server)截屏工具.该工具特点为:通过 java 代码调用无界 ...

  4. java WebDriver + selenium 调用 谷歌驱动 chromedriver 实现 在 liunx 环境下 无界面 截图 加自动获取页面最大真实页面内容高宽 加各类型踩坑日记

    目录 1.介绍 2.结果效果 2.1大图 2.2细节小图 3.依赖 4.代码 4.1引入 4.2具体代码 4.3执行 5.Linux下安装chrome和chromedriver 5.1yum安装 5. ...

  5. python实现冒险者游戏(文字版,无界面)

    冒险者游戏 1.总体框架 1.1 实体关系图 E-R图 1.2 活动流程图 2 具体模块: 2.1 实体bean类 (1) 冒险者adventurer (2) 背包Inventory (3) 物品It ...

  6. java无锁数据结构,无锁有序链表的实现

    感谢同事[kevinlynx]在本站发表此文 无锁有序链表可以保证元素的唯一性,使其可用于哈希表的桶,甚至直接作为一个效率不那么高的map.普通链表的无锁实现相对简单点,因为插入元素可以在表头插,而有 ...

  7. 尽信书,不如无书。java的包装类Integer的深入理解及特殊情况(以及java疯狂讲义第5版170页中的错误)

    1.通常情况下,两个包装类型只有在两个引用指向同一对象时,使用 == 进行比较时才会返回true 例如: Double do1 = Double.valueOf(1.23); Double do2 = ...

  8. 《Java学习笔记(第8版)》学习指导

    <Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...

  9. Java图形化界面设计——容器(JFrame)

    Java图形化界面设计--容器(JFrame) 程序是为了方便用户使用的,因此实现图形化界面的程序编写是所有编程语言发展的必然趋势,在命令提示符下运行的程序可以让我们了解java程序的基本知识体系结构 ...

最新文章

  1. Redhat5.4 系统上部署 MooseFS分布式文件系统的部署
  2. Android插件化开发之动态加载的类型
  3. 3299元起!结缘梅奔F1车队,Redmi K50电竞版发布
  4. 1.1 STL 概述
  5. HDU1754 —— I Hate It 线段树 单点修改及区间最大值
  6. 天梯—打印沙漏以及剩余个数(C语言)
  7. 几种常见的基于Lucene的开源搜索解决方案对比
  8. Redis 中的事件驱动模型
  9. ios上java代码实现_IOS学习之路五(代码实现UITableView)
  10. 安卓beforetextchanged_Android TextWatcher.afterTextChanged与TextWatcher
  11. python网课答案查询_网课答案查询助手v1.0
  12. 蓝桥杯等差素数列-python
  13. 多目标跟踪之数据关联算法——匈牙利算法
  14. 【CSDN问答】关于CSDN问答社区的那些事儿
  15. 数学运算符号的英文表达
  16. 查看当前Ubuntu系统的版本
  17. ChatGPT提示词工程(六):Expanding扩展
  18. Windows10安装Markdown安装教程(超级详细)
  19. C#用IIS发布网站后localhost打不开127.0.0.1可以打开
  20. EDA-什么是综合?什么是适配?

热门文章

  1. SQL UCASE() 函数
  2. 向上滚动 终端_终端 - 如何在Linux控制台上向上/向下滚动?
  3. Unity 获取文件夹下所有文件夹/文件
  4. 未来机器人生活的畅享之旅
  5. 使用纸壳CMS创建多语言网站
  6. grpc双向流 python_gRPC Golang/Python使用
  7. Python 手机端自动推送功能(利用极光推送API)
  8. 生活总结[置顶] 程序员的奋斗史(十八)——人活着,只是一种态度
  9. asp.net动态网页制作视频教程
  10. xml引入xml_XML Watch,蠕虫的哔哔声