需求:

在启动游戏房间时,应提前准备好54张牌完成洗牌,发牌,牌顺序逻辑。

分析:

1.当系统启动的同时需要准备好数据的时候,就可以用静态代码块了。
2.洗牌就是打乱牌的顺序。
3.定义三个玩家、依次发出51张牌
4.给玩家的牌进行排序

代码实现:

Card类(卡牌类)

package collection.map.d4_collection_test;/**定义牌的类*/
public class Card {private String size;private String color;private int index;//真正的牌的大小public void setIndex(int index) {this.index = index;}public Card() {}public Card(String size, String color,int index) {this.size = size;this.color = color;this.index = index;}public String getSize() {return size;}public void setSize(String size) {this.size = size;}public String getColor() {return color;}public void setColor(String color) {this.color = color;}public int getIndex() {return index;}/*** 重写toString,直接输出牌的大小与花色* @return*/@Overridepublic String toString() {return size+color;}}

GemeDemo类(实现类)

package collection.map.d4_collection_test;import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;public class GameDemo {/**1.定义一个静态集合对象,存放54张牌*/public static List<Card> allcards=new ArrayList<>();/**2.做牌,定义静态代码块初始化牌数据*/static {//3.定义点数:个数确定,类型确定,使用数组String[] sizes={"3","4","5","6","7","8","9","10","J","Q","K","A","2"};//4.定义花色:个数确定,类型确定,使用数组String[] colors={"♥","♠","♦","♣"};//5.组合点数和花色int index=0;//记录牌的大小for (String size : sizes) {index++;for (String color : colors) {//6.封装为牌对象Card c=new Card(size,color,index);//7.添加到集合中allcards.add(c);}}//封装大小王,存入集合Card c1=new Card("","												

Java实现斗地主游戏中洗牌,发牌,牌顺序逻辑相关推荐

  1. JAVA控制台扑克牌游戏,洗牌,发牌,比较大小

    此游戏是一个简单的并且很基础的java控制台程序.这个扑克牌游戏主要的游戏过程是:首先创建一副扑克牌,创建好了后要进行洗牌,牌洗好了,需要玩家来玩,接下来就创建玩家.有洗好的牌,也有玩家了,那么就开始 ...

  2. java斗地主随机发牌_使用Java实现斗地主游戏的发牌过程

    package com.review.test; import java.util.ArrayList; import java.util.Collections; import java.util. ...

  3. 有趣的游戏,Java版斗地主游戏实现

    近日,使用Java编写了斗地主单机小游戏,作为经典小游戏,它也给大家带来不少乐趣,通过对这款游戏的简单实现,加深了我对对Java基础算法的理解. 一.思路: 1.首先要了解斗地主的游戏规则,针对游戏整 ...

  4. Java 编写斗地主游戏 窗体程序 完整源码

    今天为大家分享斗地主游戏的开发与制作,目前是单机版游戏,后续时间空了,会给大家分享下联机版本的开发与制作.整个系统界面漂亮,有完整得源码,希望大家可以喜欢.喜欢的帮忙点赞和关注.一起编程.一起进步 开 ...

  5. 一行Java代码实现游戏中交换装备

    摘要:JDK 1.5 开始 JUC 包下提供的 Exchanger 类可用于两个线程之间交换信息. 本文分享自华为云社区<一行Java代码实现两玩家交换装备[并发编程]>,作者:陈皮的Ja ...

  6. 用Java模拟斗地主游戏

    package com.zgm.doudizhu;import java.util.*;public class Game {/*** 1. List集合存储 54个编号* 2. Map <ke ...

  7. Java编写斗地主游戏

    1.准备牌:54张牌,存储到一个集合中 ·特殊牌: 大王 小王 ·普通牌:52张 定义一个数组/集合,存储4种花色:♥(红桃♦(方片) ♠(黑桃)♣(梅花) 定义一个数组/集合,存储13个序号:1-2 ...

  8. java制作扫雷游戏中埋雷的难点_Java 实现经典扫雷游戏

    最后一次更新于 2019/07/08 效果演示图 Java 实现经典扫雷游戏 本扫雷游戏有以下功能: 如果点中炸弹会显示炸弹. 玩家左键点击方块能显示该方块周围会出现几个炸弹,如果不存在炸弹的话扫描范 ...

  9. java制作扫雷游戏中埋雷的难点_月薪30K程序员花了一个小时,用c++做出经典扫雷游戏 !...

    上次发过一个俄罗斯方块的游戏源码,由于是通过Easy X实现的,但是很多和我一样的新手,一开始不知道Easy X是什么,到时源码拿过去之后,运行报错,我这次发的扫雷, 也是通过Easy X实现,Eas ...

最新文章

  1. LDNFSGB: prediction of long non-coding rna and disease association using network feature similarity
  2. bnuoj 1065 简单的问题(位运算)
  3. oracle 五种索引创建
  4. 第三章 中间件,3.1 万亿级数据洪峰下的分布式消息引擎(作者:冯嘉、誓嘉、尘央、牟羽)...
  5. java 接口和抽象类的区别6_JAVA基础篇-接口和抽象类的区别
  6. 计算机组成原理中移码怎么算,计算机组成原理中移码是怎么回事?
  7. HDU-1501-Zipper
  8. uniapp 分享缩略图过大怎么办_经验分享| 反击破转子断裂的应急处理方法
  9. 【浙江第16届省赛:B】Element Swapping(分情况讨论--数学题)
  10. MSN Messenger协议简介
  11. 酷狗音乐分类html,酷狗音乐手机版创建歌单教程 分类自己的音乐库
  12. 八款最佳的远程桌面工具
  13. 图解排序算法之「冒泡排序」(详细解析)
  14. android 点击 加qq群,Android一键加QQ群
  15. php expecting,php – 解析错误:语法错误,意外的’.’,expecting’,’或’;’
  16. 如何关闭移动硬盘的自动休眠功能
  17. Vant Weapp组件picker选择器初始默认选中
  18. 3D EXPERIENCE DraftSight的协作能力
  19. MATLAB 按组聚类绘图gscatter
  20. 小心!选错聚合广告平台,APP变现路上受挫!

热门文章

  1. burpsuite代理监听
  2. Scala语法汇集ABC
  3. 网络安全没有“银弹”
  4. 写爬虫遇到验证码识别问题的解决方案
  5. Universal-Image-Loader 图片来源于drawable改动 Scheme.DRAWABLE.wrap(R.drawable.img)报错
  6. 解决cvxpy报错The solver GLPK_MI is not installed
  7. duilib学习------网易云信combo控件
  8. 中国超级计算机神威 上市公司,中国拟研发百亿亿级超级计算机 秒杀目前最快神威...
  9. 美团酒旅实时数据规则引擎应用实践
  10. 狄利克雷条件和帕塞瓦尔定理