zoukankan      html  css  js  c++  java
  • 使用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);
          
       }
    }


    实现效果:

    每次运行给每个人发的牌均随机。

  • 相关阅读:
    HttpModule和HttpHandler
    SharePoint
    两种遍历Hashtable方法(小技巧)
    在线游戏开发人员的行话
    AS3 条件编译
    Flash开发MMORPG的时候一些技术障碍
    Java实现几种常见排序方法
    画贝塞尔曲线
    一一解答
    如何留住核心人才?
  • 原文地址:https://www.cnblogs.com/DennySmith/p/12318900.html
Copyright © 2011-2022 走看看