模拟斗地主

public class M1 {
public static void main(String args[]) {
DouDiZhu02();
} private static void DouDiZhu02() {
HashMap<Integer, String> hashMap = new HashMap<>();
ArrayList<Integer> array = new ArrayList<>();
String[] colors = {"♥", "♠", "♣", "♢"};
String[] numbers = {"3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K", "A", "2"};
int index = 0;
for (String number : numbers) {
for (String color : colors) {
hashMap.put(index, color + number);
array.add(index);
index++;
}
}
hashMap.put(index, "小王");
array.add(index);
index++;
hashMap.put(index, "大王");
array.add(index); Collections.shuffle(array); TreeSet<Integer> set0 = new TreeSet<>();
TreeSet<Integer> set1 = new TreeSet<>();
TreeSet<Integer> set2 = new TreeSet<>();
TreeSet<Integer> set9 = new TreeSet<>();
for (int i = 0; i < array.size(); i++) {
int x = array.get(i);
if (i >= array.size() - 3) {
set9.add(x);
} else if (i % 3 == 0) {
set0.add(x);
} else if (i % 3 == 1) {
set1.add(x);
} else if (i % 3 == 2) {
set2.add(x);
}
}
lookPoker2("0 ", set0, hashMap);
lookPoker2("1 ", set1, hashMap);
lookPoker2("2 ", set2, hashMap);
lookPoker2("底牌 ", set9, hashMap);
} private static void lookPoker2(String name, TreeSet<Integer> ts, HashMap<Integer, String> hm) {
System.out.print(name + "的牌是:");
for (Integer key : ts) {
String poker = hm.get(key);
System.out.print(poker + " ");
}
System.out.println();
} private static void DouDiZhu01() {
ArrayList<String> array = new ArrayList<>();
String[] colors = {"♥", "♠", "♣", "♢"};
String[] numbers = {"2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K", "A"};
for (String color : colors) {
for (String number : numbers) {
array.add(color + number);
}
}
array.add("小王");
array.add("大王");
Collections.shuffle(array);
//System.out.println(array); ArrayList<String> array0 = new ArrayList<>();
ArrayList<String> array1 = new ArrayList<>();
ArrayList<String> array2 = new ArrayList<>();
ArrayList<String> arrayPoker = new ArrayList<>();
for (int i = 0; i < array.size(); i++) {
String poker = array.get(i);
if (i >= array.size() - 3) {
arrayPoker.add(poker);
} else if (i % 3 == 0) {
array0.add(poker);
} else if (i % 3 == 1) {
array1.add(poker);
} else if (i % 3 == 2) {
array2.add(poker);
}
}
lookPoker1("0 ", array0);
lookPoker1("1 ", array1);
lookPoker1("2 ", array2);
} private static void lookPoker1(String name, ArrayList<String> array) {
System.out.println(name + "的牌是:");
for (String poker : array) {
System.out.print(poker + " ");
}
System.out.println();
}
}

最新文章

  1. WPF自定义RoutedEvent事件代码段
  2. PHP中new static()与new self()的比较
  3. codeforces 85D D. Sum of Medians 线段树
  4. ajax-向服务器发送请求
  5. Mac OS
  6. c/c++面试题(4)字符串翻转/打印任意进制格式/类型转换
  7. Python Queue队列
  8. Android关联源码support-v4的问题解决
  9. UVa 1593代码对齐
  10. redis学习笔记之pipeline
  11. HttpClient(4.3.5) - HTTP Entity
  12. POJ3254 - Corn Fields(状态压缩DP)
  13. flash挡住了下拉菜单
  14. Ubuntu 下对ADT 添加别名(alias)
  15. NPOI之使用EXCEL模板创建报表
  16. Linux Kernel 2.6.28 以上有BUG,系统运行第208.5天down机
  17. Testing - 敏捷测试
  18. Dojo框架:误解与现实[转载]
  19. pureftpd.passwd解析
  20. CSS小知识-----前缀-moz-、-ms-、-webkit-,-o-分别代表的意思

热门文章

  1. 基于maven+java+TestNG+httpclient+poi+jsonpath+ExtentReport的接口自动化测试框架
  2. .Net Core 2.0 App中读取appsettings.json
  3. 计算机二级-C语言-程序修改题-190108记录-字符串处理
  4. 改变input[type=range]的样式 动态滑动
  5. Java数组和方法
  6. 微信HTTP公告
  7. Shiro入门学习之shi.ini实现授权(三)
  8. pycharm新建Django时,遇到的坑,安装index包失败
  9. C语言:将形参s所指字符串中所有ASCII码值小于97的字符存入形参t所指字符数组中,
  10. python练习:斐波那契数列的递归实现