import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
/*
* 斗地主玩牌
*/
public class DouDiZhu {
public static void main(String[] args) {
//1. 准备扑克牌
HashMap<Integer,String> pooker = new HashMap<Integer, String>();
ArrayList<Integer> pookerNumber = new ArrayList<Integer>();
String[] numbers = {"2","A","K","Q","J","10","9","8","7","6","5","4","3"};
String[] colors = {"红桃","黑桃","方片","草花"};
int index = 2;
for(String number : numbers){
for(String color : colors){
pooker.put(index, color+number);
pookerNumber.add(index);
index++;
}
}
pooker.put(0, "大王");
pookerNumber.add(0);
pooker.put(1, "小王");
pookerNumber.add(1);
//2. 洗牌
Collections.shuffle(pookerNumber);
//三个玩家集合 一个底牌集合
ArrayList<Integer> player1 = new ArrayList<Integer>();
ArrayList<Integer> player2 = new ArrayList<Integer>();
ArrayList<Integer> player3 = new ArrayList<Integer>();
ArrayList<Integer> bottom = new ArrayList<Integer>();
//利用ArrayList集合中元素的索引 索引%3
for(int i = 0 ; i < pookerNumber.size() ; i++){
//前三张牌 先拿出 做为底牌
if(i < 3){
bottom.add( pookerNumber.get(i));
}else if(i % 3 == 0){
player1.add( pookerNumber.get(i) );//第一个玩家 拿牌
}else if( i % 3 == 1){
player2.add( pookerNumber.get(i) );//第二个玩家 拿牌
}else if( i % 3 == 2){
player3.add( pookerNumber.get(i) );//第三个玩家 拿牌
}
}
//3.每个玩家手中的牌 排序
Collections.sort(player1);
Collections.sort(player2);
Collections.sort(player3);
//4.显示牌面
look("刘德华",player1,pooker);
look("张曼玉",player2,pooker);
look("林青霞",player3,pooker);
look("底牌",bottom,pooker);
}
public static void look(String name,ArrayList<Integer> player,HashMap<Integer,String> pooker){
System.out.print(name+" ");
for(Integer key : player){
String value = pooker.get(key);
System.out.print(value+" ");
}
System.out.println();
}
}