使用Java實現斗地主游戲的發牌過程


使用Java實現斗地主游戲的發牌過程使用到的知識點

1.泛型

2.集合

3.數組

4.增強for循環

實現代碼:

package com.review.test;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

//斗地主游戲的實現過程
public class DouDiZhu {
   public static void main(String[] args) {
    //定義一個集合用於存放54張牌  泛型使用String
      List<String> poker=new ArrayList<>();
    //定義兩個數組用於存儲花色和數字
      String[] colors={"♥","♦","♠","♣"};
      String[] numbers={"2","A","K","Q","J","10","9","8","7","6","5","4","3"};
      //先存入大王和小王
      poker.add("大王");
      poker.add("小王");
      //組合牌的花色和數字存入集合中
      for(String color:colors){
          for(String number:numbers){
             poker.add(color+number);
          }
      }
      //System.out.println(poker);
      //發牌
      Collections.shuffle(poker);
      //定義3個斗地主玩家和一個底牌
      ArrayList<String> player01=new ArrayList<>();
      ArrayList<String> player02=new ArrayList<>();
      ArrayList<String> player03=new ArrayList<>();
      ArrayList<String> dipai=new ArrayList<>();
      //給三位玩家和底牌發牌
      for (int i = 0; i <poker.size(); i++) {
          String p=poker.get(i);
         if(i>=51){
             //給底牌發牌
             dipai.add(p);
         }else if(i%3==0){
             //給1號玩家發牌
             player01.add(p);
         }else if(i%3==1){
             //給2號玩家發牌
             player02.add(p);
         }else if(i%3==2){
             //給3號玩家發牌
             player03.add(p);
         }
    }
      //發牌完成,看牌
      System.out.println("玩家1"+player01);
      System.out.println("玩家2"+player02);
      System.out.println("玩家3"+player03);
      System.out.println("底   牌"+dipai);
      
   }
}


實現效果:

 

每次運行給每個人發的牌均隨機。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM