上代码
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.TreeSet;
/**
* 模拟斗地主 分析 : 创建牌盒 ,装牌 ,洗牌 ,发牌 ,看牌,实现看牌排序
*
*
*/
public class PockerDemo2 {
public static void main(String[] args) {
HashMap<Integer, String> hm = new HashMap<Integer, String>();
ArrayList<Integer> li = new ArrayList<Integer>();
int index = 0;
String[] HuaSe = { "♠", "♥", "♣", "♦" };
String[] DianShu = { "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K", "A", "2" };
for (String s1 : DianShu) {
for (String s2 : HuaSe) {
hm.put(index, s1.concat(s2));
li.add(index);
index++;
}
}
hm.put(index, "大王");
index++;
hm.put(index, "大王");
Collections.shuffle(li);
// 发牌
TreeSet<Integer> maYun = new TreeSet<Integer>();
TreeSet<Integer> shiYuZhu = new TreeSet<Integer>();
TreeSet<Integer> leiJun = new TreeSet<Integer>();
TreeSet<Integer> diPai = new TreeSet<Integer>();
for (int i = 0; i < li.size(); i++) {
{
if (i >= li.size() - 3)
diPai.add(li.get(i));
else if (i % 3 == 2)
leiJun.add(li.get(i));
else if (i % 3 == 1)
shiYuZhu.add(li.get(i));
else if (i % 3 == 0)
maYun.add(li.get(i));
}
}
// 看牌
lookPocker("马云", maYun, hm);
// lookPocker("史玉柱", shiYuZhu);
}
private static void lookPocker(String name, TreeSet<Integer> na, HashMap<Integer, String> hm) {
System.out.print(name + " ");
for (Integer key : na) {
String value = hm.get(key);
System.out.print(value + " ");
}
System.out.println();
}
}