集合案例扑克牌

今天给大家带来的是一个使用集合编写的扑克牌案例

有洗牌看牌发牌功能

   1 public static void main(String[] args) {

 2         HashMap<Integer, String> pk=new HashMap<>();
 3         ArrayList<Integer> pknums=new ArrayList<>();
 4         String[] colos= {"♠","♥","♣","■"};
 5         String[] number= {"2,","A","K","Q","J","10","9","8","7","6","5","4","3"};
 6         int index=2;
 7         for (String numbers : number) {
 8             for (String coloss :colos) {
 9                 pk.put(index, numbers+coloss);
10                 pknums.add(index);
11                 index++;
12             }
13         }
14         pk.put(1,"小王");
15         pk.put(0,"大王");
16         pknums.add(0);
17         pknums.add(1);
18         Collections.shuffle(pknums);
19         ArrayList<Integer> p1=new ArrayList<>();
20         ArrayList<Integer> p2=new ArrayList<>();
21         ArrayList<Integer> p3=new ArrayList<>();
22         ArrayList<Integer> botton=new ArrayList<>();        
23         for (int i = 0; i <pknums.size(); i++) {
24             if(i<3) {
25                 botton.add(pknums.get(i));
26             }else if(i%3==1) {
27                 p1.add(pknums.get(i));
28             }else if(i%3==2) {
29                 p2.add(pknums.get(i));
30             }else if(i%3==0) {
31                 p3.add(pknums.get(i));
32             }
33         }
34         lookpk("玩家1",p1,pk);
35         lookpk("玩家2",p2,pk);
36         lookpk("玩家3",p3,pk);
37     }
38 
39     
40     public static void lookpk(String mame,ArrayList<Integer> p,HashMap<Integer, String> pk) {
41         Collections.sort(p);
42         System.out.print(mame+"手牌");
43         for (Integer key : p) {
44             String hs=pk.get(key);
45             System.out.print(hs+" ");
46         }
47         System.out.println();
48     }


控制台效果

玩家1手牌小王 2,♠ 2,♣ A♣ A■ K♠ Q♣ 10♥ 9♥ 9♣ 8♣ 8■ 7■ 6♠ 4♠ 4■ 3♣
玩家2手牌2,■ A♥ K■ Q♠ Q■ J♠ J■ 10♣ 10■ 8♠ 7♠ 7♥ 5♠ 5♥ 5♣ 3♠ 3♥
玩家3手牌2,♥ A♠ K♥ K♣ Q♥ J♥ J♣ 10♠ 9♠ 9■ 8♥ 7♣ 6♣ 6■ 5■ 4♥ 4♣

猜你喜欢

转载自www.cnblogs.com/breezezqf/p/9188266.html