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<Integer, String> map = new HashMap<Integer,String>(); List<String> 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<Integer> keyset = map.keySet(); List<Integer> list1 = new ArrayList<>(); for(Integer count:keyset){ list1.add(count); } //洗牌三次 Collections.shuffle(list1); Collections.shuffle(list1); Collections.shuffle(list1); Set<Integer> player01 = new TreeSet<>(); Set<Integer> player02 = new TreeSet<>(); Set<Integer> player03 = new TreeSet<>(); Set<Integer> dipai = new TreeSet<>(); //发牌 for(int i=0;i<list1.size();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经典小游戏》
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持好吧啦网。
相关文章:
1. 一文读懂Spring Cloud-Hystrix2. PHP终止脚本执行的实例代码3. Python中Selenium模块的使用详解4. SQL+HTML+PHP 一个简单论坛网站的综合开发案例(注册、登录、注销、修改信息、留言等)5. Python Pandas pandas.read_sql函数实例用法6. Python Opencv轮廓常用操作代码实例解析7. 详解JavaScript是如何验证URL的8. Python语言规范之Pylint的详细用法9. 使用python创建生成动态链接库dll的方法10. python用dataframe将csv中的0值数据转化为nan缺失值字样

网公网安备