package jihe;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.TreeSet;
public class Ddzsjb {
public static void main(String[] args){
//创建HashMap数组 键是编号,值是牌
HashMap hm=new HashMap();
//创建ArrayList 用来存储编号
ArrayList array=new ArrayList();
//定义花色数组
String[] colors= {"♦","♣","♥","♠"};
//定义点数数组
String[] numbers = {"2","3","4","5","6","7","8","9","10","J","Q","K","A"};
//从0开始往HashMap添加编号和牌 同时往ArrayList也添加编号
int index =0;
for(String n:numbers) {
for(String c:colors) {
hm.put(index, c+n);
array.add(index);
index++;
}
}
hm.put(index, "大王");
array.add(index);
index++;
hm.put(index, "小王");
array.add(index);
//洗牌 洗的牌编号
Collections.shuffle(array);
//发牌 为了发的编号是排序的用TreeSet集合
//创建三个玩家对象
TreeSet a1=new TreeSet();
TreeSet a2=new TreeSet();
TreeSet a3=new TreeSet();
//创建底牌对象
TreeSet dp=new TreeSet();
for(int i=0;i=array.size()-3) {
dp.add(d);
}
else if(i%3==0) { //n个玩家就用i%n
a1.add(d);
}
else if(i%3==1) {
a2.add(d);
}
else if(i%3==2) {
a3.add(d);
}
}
//看牌
//调用看牌的方法
look("张三",a1,hm);
look("李四",a2,hm);
look("王二",a3,hm);
look("底牌",dp,hm);
}
//定义看牌的方法
public static void look(String name,TreeSet ts,HashMap hm) {
System.out.print(name+"的牌是:");
for(Integer key:ts) {
String p=hm.get(key); //获取HashMap的值即“牌”
System.out.print(p+" ");
}
System.out.println();
}
}