java版斗地主_Java实现斗地主简化版
本文实例为大家分享了Java实现斗地主的具体代码,供大家参考,具体内容如下
package com.westos.chinesePoker;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.TreeSet;
/**
*加强版的斗地主 EnhancedVersion
*在version1.0的基础上加入扑克排序.
* @author 虎虎
* @version 2.0
*/
public class ChinesePokerEnhanced {
public static void main(String[] args) {
//0-53代表每个对应的扑克
Map map = new HashMap();
List list = new ArrayList<>();
String[] color = {"♥","♠","♣","◆"};
String[] num = {"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
for(String str:num) {
for(String str1:color) {
String poker = str1.concat(str);
list.add(poker);
}
}
list.add("♀");
list.add("♂");
for(int i=0;i<54;i++) {
map.put(i, list.get(i));
}
Set keyset = map.keySet();
List list1 = new ArrayList<>();
for(Integer count:keyset){
list1.add(count);
}
//洗牌三次
Collections.shuffle(list1);
Collections.shuffle(list1);
Collections.shuffle(list1);
Set player01 = new TreeSet<>();
Set player02 = new TreeSet<>();
Set player03 = new TreeSet<>();
Set dipai = new TreeSet<>();
//发牌
for(int i=0;i
if(i<51&&i%3 == 0) {
player01.add(list1.get(i));
}
if(i<51&&i%3 == 1) {
player02.add(list1.get(i));
}
if(i<51&&i%3 == 2) {
player03.add(list1.get(i));
}if(i>=51)
dipai.add(list1.get(i));
}
//玩家一的牌
System.out.println("玩家一:");
for(Integer i:player01) {
System.out.print(map.get(i)+" ");
}
System.out.println("\n玩家二:");
//玩家二的牌
for(Integer i:player02) {
System.out.print(map.get(i)+ " ");
}
System.out.println("\n玩家三:");
//玩家三的牌
for(Integer i:player03) {
System.out.print(map.get(i)+ " ");
}
System.out.println("\n底牌:");
//玩家一的牌
for(Integer i:dipai) {
System.out.print(map.get(i)+ " ");
}
}
}
更多精彩游戏,请参考专题《java经典小游戏》
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自学编程网。
java版斗地主_Java实现斗地主简化版相关推荐
- 我的世界JAVA版编程语言_Java版版本记录/开发版本
此页面并非官方版本记录或更新日志.官方日志请见Minecraft官网. 关于1.11及此前版本,请见Mojang官网. 关于Beta 1.8及此前版本,请见Notch的博客,Word of Notch ...
- java 斗地主_java实现斗地主游戏
感想: 第一次写博客,感觉编辑器挺复杂厉害的,感觉自己的内容挺简单的.有什么问题请多多指教! 思路: 1.创建一个扑克牌的实体类Poker,设置了四个参数:花色.数字.牌值(判断大小).是否地主牌,实 ...
- 植物大战僵尸java版视频_Java小项目之:植物大战僵尸,这个僵尸不太冷!
植物卡片框 */ public class PlantsBar implements GuiConstnat { // 卡片格子数量 private int plantSum; // 太阳数量和卡片选 ...
- 数独java界面基础_java版数独游戏界面实现(二)
本文实例为大家分享了java版数独游戏界面实现的具体代码,供大家参考,具体内容如下 实现效果图: 这里写图片描述 主函数用于启动程序: package hlc.shudu.app; import hl ...
- java循环队列_Java版-数据结构-队列(循环队列)
前情回顾 在上一篇,笔者给大家介绍了数组队列,并且在文末提出了数组队列实现上的劣势,以及带来的性能问题(因为数组队列,在出队的时候,我们往往要将数组中的元素往前挪动一个位置,这个动作的时间复杂度O(n ...
- java微信机器人_Java版微信机器人代码
Java版微信机器人代码 (2014-07-31 09:47:58) 标签: 软件测试 java 上海泽众软件 package com.eiyoung.wechat.web.controller; i ...
- 实验楼Java写计算器_Java版图形界面计算器
Java 版图形界面计算器 实验说明及介绍 环境登录 无需密码自动登录,系统用户名 shiyanlou,密码 shiyanlou 环境介绍 本实验环境采用带桌面的 Ubuntu Linux 环境,实验 ...
- java版的俄罗斯方块_Java版俄罗斯方块
Java版俄罗斯方块 08年写的一个Java版俄罗斯方块程序 界面做的中规中矩,每种形状颜色都不相同 程序控制还可以,没什么大的Bug 消磨时间的时候可以Down下来玩玩 下载链接:http://do ...
- java 线性计算器_java版科学计算器,支持表达式计算
<java版科学计算器,支持表达式计算>由会员分享,可在线阅读,更多相关<java版科学计算器,支持表达式计算(12页珍藏版)>请在人人文库网上搜索. 1.程序设计综合设计题目 ...
最新文章
- python第三方开发软件_python开发者的必备工具(一)
- AI创业周报:元宇宙时代来临!环球墨非风头正盛,53岁女博士领现象级芯片公司获数亿元融资...
- oracle cluster n,10g Rac的cluster_interconnect信息
- 【java开发系列】—— 嵌套类与内部类
- MATLAB系统命令
- java对象序列化克隆_Java8基础知识(三)对象克隆与序列化
- mysql group by 区分null 值和非null_你知道mysql中空值和null值的区别吗
- 想念一个人是一种温馨,被别人想念是一种幸福
- kafka原理_Kafka 架构原理,也就这么回事
- Kelvin云层效果Ps笔刷
- day-60Django
- 图文教你选择和区别A卡和N卡
- 打开计算机 显示不支持此接口,新装的电脑系统,打开图片提示不支持此接口!怎么解决!...
- wifi自动连接,断开连接,打开和关闭,亲测有效
- 捋一捋Condition
- 【C++】 文件提取英文单词
- 百度云轻量应用服务器LS从购买到web应用nginx搭建部署全流程--你值得拥有的入门级教程
- OSI的7层模型和TCP/IP四层模型
- 服务器虚拟化和网络虚拟化关系,数据中心网络如何应对服务器虚拟化?
- Google SEO优化排名常见的三种问题