// 斗地主案例
public static void main(String [] args){
String[] wang = {"大王","小王"};
String[] huase = {"♠","♥","♣","♦"};
String[] shuzi = {"K","Q","J","10","9","8","7","6","5","4","3","2","A"};
ArrayList<String> allPai = new ArrayList<>();//存放所有的牌
allPai.add(wang[0]);
allPai.add(wang[1]);
// 组合花色和数字,并存放到存牌器中
for(int i =0 ; i<4 ; i++){
for(int j = 0; j < 13 ; j++){
String lianjie = huase[i]+shuzi[j];
allPai.add(lianjie);
}
}
// 斗地主的三个人
Collection<String> p0 = new ArrayList<>();
Collection<String> p1 = new ArrayList<>();
Collection<String> p2 = new ArrayList<>();
// 通过随机数获取存牌器中的牌,并将牌从存牌器中移除
// for(int i = 0; i < 51 ; i++ ){
// Random j = new Random();
// int y = j.nextInt(54-i);
// int x = i%3;
// switch (x){
// case 0:
// p0.add(allPai.remove(y));
// break;
// case 1:
// p1.add(allPai.remove(y));
// break;
// case 2:
// p2.add(allPai.remove(y));
// break;
// }
// }
Collections.shuffle(allPai);//打乱集合的顺序
for(int i = 50; i >= 0 ; i-- ){
int x = i%3;
switch (x){
case 0:
p0.add(allPai.remove(i));
break;
case 1:
p1.add(allPai.remove(i));
break;
case 2:
p2.add(allPai.remove(i));
break;
}
}
// 展示每个人的牌以及底牌
System.out.println("p0:");
for (String i : p0 ) {
System.out.print(i+" ");
}
System.out.println();
System.out.println("p1");
for (String i : p1 ) {
System.out.print(i+" ");
}
System.out.println();
System.out.println("p2");
for (String i : p2 ) {
System.out.print(i+" ");
}
System.out.println();
System.out.println("底牌:");
for (String i : allPai ) {
System.out.print(i+" ");
}
}
结果如下: