1. 组装54张扑克牌
2. 将54张牌顺序打乱
3. 三个玩家参与游戏,三人交替摸牌,每人17张牌,最后三张留作底牌。
package Demo1;
import java.util.ArrayList;
import java.util.Collections;
public class Demo2 {
public static void main(String[] args) {
// 1. 组装54张扑克牌
//
// 2. 将54张牌顺序打乱
//
// 3. 三个玩家参与游戏,三人交替摸牌,每人17张牌,最后三张留作底牌。
ArrayList<String> arr1 = new ArrayList<>();
arr1.add("♠");
arr1.add("♦");
arr1.add("♥");
arr1.add("♣");
ArrayList<String> arr2 = new ArrayList<>();
for (int i = 2; i <= 10; i++) {
arr2.add(i + " ");
}
arr2.add("A");
arr2.add("J");
arr2.add("K");
arr2.add("Q");
ArrayList<String> arr3 = new ArrayList<>();
arr3.add("大王");
arr3.add("小王");
for (String a1 : arr1
) {
for (String a2 : arr2
) {
arr3.add(a1 + a2);
}
}
//创建底牌集合
ArrayList<String> card = new ArrayList<>();
//创建三个玩家
ArrayList<String> p1 = new ArrayList<>();
ArrayList<String> p2 = new ArrayList<>();
ArrayList<String> p3 = new ArrayList<>();
Collections.shuffle(arr3);//打乱牌序
System.out.println(arr3);
/*
分牌
*/
for (int i = 0; i < 3; i++) {
card.add(arr3.get(i));
}
for (int i = 3; i < arr3.size(); i += 3) {
p1.add(arr3.get(i));
p2.add(arr3.get(i + 1));
p3.add(arr3.get(i + 2));
}
//第二种发牌实现方式
// for (int i = 0; i < arr3.size(); i++) {
// if (i >=51) {
// card.add(arr3.get(i));
// } else {
// if (i%3==0){
// p1.add(arr3.get(i));
// }
// if (i%3==1){
// p2.add(arr3.get(i));
// }
// else if (i%3==2){
// p3.add(arr3.get(i));
// }
//
// }
//}
System.out.println("底牌" + card);
System.out.println("玩家1" + p1);
System.out.println("玩家2" + p2);
System.out.println("玩家3" + p3);
}
}