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 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 player01=new ArrayList<>();

ArrayList player02=new ArrayList<>();

ArrayList player03=new ArrayList<>();

ArrayList dipai=new ArrayList<>();

//给三位玩家和底牌发牌

for (int i = 0; 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);

}

}

实现效果:

java斗地主随机发牌_使用Java实现斗地主游戏的发牌过程相关推荐

  1. java项目----教务管理系统_基于Java的教务管理系统

    java项目----教务管理系统_基于Java的教务管理系统 2022-04-22 18:18·java基础 最近为客户开发了一套学校用教务管理系统,主要实现学生.课程.老师.选课等相关的信息化管理功 ...

  2. Java斗地主界面实现_通过Java实现斗地主

    packagedemo06;importjava.util.ArrayList;importjava.util.Collections;importjava.util.HashMap;/*** *@a ...

  3. java课程 数独 文库_数独java

    数独游戏的算法研究与实现_IT/计算机_专业资料.数独游戏的算法研究与实现 java lSSN1009-3044 ComputerKnowledgeAnd MnoJ;01∥电奠知识与技术 E-mail ...

  4. java是什么格式_是java格式

    错误:编码GBK的不可映射字符的解决办法 最近在重新补javaSE的基础,编辑器编写完代码以后,在控制台运行代码段的时候,出现了以下的错误提示:错误:编码GBK的不可映射字符 在通过查询谷哥和度娘以后 ...

  5. java ee开发环境_设置Java EE 6开发环境

    java ee开发环境 本教程简要说明了如何设置典型的环境来开发基于Java EE 6的应用程序. 除了可以正常工作的Windows XP客户端具有足够的CPU能力和内存外,本教程没有其他先决条件. ...

  6. Java异常处理深入理解_关于java异常处理机制的深入理解.doc

    关于java异常处理机制的深入理解.doc 关于JAVA异常处理机制的深入理解1引子TRYCATCHFINALLY恐怕是大家再熟悉不过的语句了,而且感觉用起来也是很简单,逻辑上似乎也是很容易理解.不过 ...

  7. java课程设计拼图_基于Java拼图游戏的设计与实现(含录像)

    基于拼图游戏的设计与实现(含录像) 摘    要 本拼图游戏是基于J2SE平台开发的,它是一个Application,它的游戏规则和诺亚舟里的拼图游戏是一样的.这个游戏将一张大图切割成N张小图,然后在 ...

  8. java runnable线程锁_多线程 java 同步 、锁 、 synchronized 、 Thread 、 Runnable

    线程 1 线程概述 1.1 什么是线程 v  线程是程序执行的一条路径, 一个进程中可以包含多条线程 v  一个应用程序可以理解成就是一个进程 v  多线程并发执行可以提高程序的效率, 可以同时完成多 ...

  9. JAVA redis缓存过期_失效java服务器

    Java 并发/多线程教程--4并发模型 本系列译自jakob jenkov的Java并发多线程教程(本章节部分内容参考http://ifeve.com/并发编程模型),个人觉得很有收获.由于个人水平 ...

最新文章

  1. 独家 | 文本数据探索性数据分析结合可视化和NLP产生见解(附代码)
  2. CPaintDC和CClientDC的区别
  3. iptables对请求的URL作IP访问控制
  4. 渗透测试learning日记(1)
  5. 第三章 PX4-Pixhawk-SPI底层驱动解析
  6. 在linux下创建自定义service服务
  7. 用于计算的计算机主机,一种用于区块链计算的计算机主机的制作方法
  8. Codeforces Round #766 (Div. 2) D. Not Adding 数学gcd
  9. 2017西安交大ACM小学期数据结构 [又是树状数组、异或]
  10. 如何创造出更优秀的用户体验?
  11. Vue中计算属性与class,style绑定
  12. Mate 50年内无望!华为确认10月海外发布会主角是nova系列
  13. React-CRON表达式生成器
  14. 2018五大网络小说在线阅读APP推荐
  15. vue移动端登录页面(包含国际区号选择、账号密码登录、手机登录和忘记密码)
  16. Unity 3D的常用快捷键
  17. 清晰认知总线(包括各类常用总线的总结)
  18. 多线程导出excel高并发_用多线程优化Excel表格数据导入校验的接口
  19. NeuroImage:暴力的隐式创伤—异常运动振荡脑活动与创伤后应激症状有关
  20. 3dsmax网格重构细分

热门文章

  1. 《赢在测试2》-- 推荐的阅读书籍
  2. Spring注解的使用和区别:@Component、@Service、@Repository、@Controller
  3. uva 11762 数学期望+记忆化搜索
  4. LJL-Solution 清空页面所有值的 (2)
  5. ModalPopupExtender使用技巧( operate ModalPopupExtender by JavaScript)
  6. Bailian4085 数组去重排序【桶排序】
  7. 计蒜客网站 ACM-ICPC亚洲区赛题
  8. JSK-16016 单词排序【排序】
  9. User-Agent 及其构造
  10. 学习 Perl(一) —— 安装及 hello world