利用几个集合的特性学习制作的发牌程序
package com.poker;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.TreeSet;
/**
* 1.创建HashMap集合存放牌序 2.创建ArrayListh集合存放牌数字编号 3.创建花色及点数数组 4.存储两个集合 5.洗牌 6.建立玩家
* 7.发牌(使用treeset接收牌为有序) 8.看牌
*
* @author cf
*
*/
public class PokerDemo {
public static void main(String[] args) {
// TODO Auto-generated method stub
HashMap<Integer, String> hm = new HashMap<Integer, String>();
ArrayList<Integer> array = new ArrayList<Integer>();
int i = 0;
String[] colors = {"♤","♥","♣","♢"};
String[] numbers = {"3","4","5","6","7","8","9","10","J","Q","K","A","2"};
for(String number: numbers) {
for(String color: colors) {
String poker = color.concat(number);
hm.put(i, poker);
array.add(i);
i++;
}
}
hm.put(i, "小王");
array.add(i);
i++;
hm.put(i, "大王");
array.add(i);
Collections.shuffle(array);
TreeSet<Integer> DingTengPeng = new TreeSet<Integer>();
TreeSet<Integer> ChenCheng = new TreeSet<Integer>();
TreeSet<Integer> YiZhe = new TreeSet<Integer>();
TreeSet<Integer> DiePai = new TreeSet<Integer>();
for(i =0; i<array.size(); i++)
{
if (i>= array.size() -3) {
DiePai.add(array.get(i));
} else if (i % 3 ==0) {
DingTengPeng.add(array.get(i));
}
else if (i%3 == 1) {
ChenCheng.add(array.get(i));
} else if (i % 3 ==2) {
YiZhe.add(array.get(i));
}
}
LookPoker("狗TP", DingTengPeng, hm);
LookPoker("CC", ChenCheng, hm);
LookPoker("约翰尹", YiZhe, hm);
LookPoker("底牌", DiePai, hm);
}
//看牌功能
public static void LookPoker (String name, TreeSet<Integer> ts,
HashMap<Integer, String> hm){
System.out.println(name + "的牌是:");
for(Integer i:ts) {
String s = hm.get(i);
System.out.print(s + " ");
}
System.out.println();
}
}