import java.util.*;
public class Test2 {
创建Map集合,键:编号 值:牌
Map<Integer,String> pokes=new HashMap<>();
//创建List集合
List<Integer> list=new ArrayList<>();
public void init(){
//创建List集合,存储颜色
List<String> color = new ArrayList<>();
//创建List集合,存储点数
List<String> num = new ArrayList<>();
Collections.addAll(color,"黑桃","红桃","方块","梅花");
Collections.addAll(num,"2","A","K","Q","J","10","9","8","7","6","5","4","3");
int count=1;
pokes.put(count++,"大王");
pokes.put(count++,"小王");
//遍历数组,用花色+点数的组合,存储到Map集合中
for (String s : num) {
for (String s1 : color) {
String all=s+s1;
pokes.put(count++,all);
}
}
Set<Integer> set=pokes.keySet();
List<Integer> list = new ArrayList<>();
list.addAll(set);
//洗牌,将牌的编号打乱
Collections.shuffle(list);
//创建List集合,存放玩家的牌
List<Integer> dp=new ArrayList<>();
List<Integer> p1=new ArrayList<>();
List<Integer> p2=new ArrayList<>();
List<Integer> p3=new ArrayList<>();
for(int i=0;i<list.size();i++){
//取出后三张牌当做底牌,然后按顺序发牌
if(i>=51){
dp.add(list.get(i));
}else if(i%3==0){
p1.add(list.get(i));
}else if(i%3==1){
p2.add(list.get(i));
}else if(i%3==2){
p3.add(list.get(i));
}
}
/*System.out.println(dp);
System.out.println(p1);
System.out.println(p2);
System.out.println(p3);*/
//对牌进行排序
Collections.sort(p1);
Collections.sort(p2);
Collections.sort(p3);
ArrayList<String> player1=new ArrayList();
ArrayList<String> player2=new ArrayList();
ArrayList<String> player3=new ArrayList();
ArrayList<String> dipai=new ArrayList();
//遍历各个玩家的牌
for (Integer integer : dp) {
dipai.add(pokes.get(integer));
}
for (Integer integer : p1) {
player1.add(pokes.get(integer));
}
for (Integer integer : p2) {
player2.add(pokes.get(integer));
}
for (Integer integer : p3) {
player3.add(pokes.get(integer));
}
System.out.println(dipai);
System.out.println(player1);
System.out.println(player2);
System.out.println(player3);
}
public static void main(String[] args) {
Test2 t = new Test2();
t.init();
}
斗地主
最新推荐文章于 2020-09-08 11:36:59 发布