本文实例为大家分享了Java实现扑克牌洗牌发牌的具体代码,供大家参考,具体内容如下

实现原理:使用4种花色和13个数字组合成52张牌,放进一个集合中;通过把集合数据排序打乱实现洗牌操作,然后在通过循环把牌抽出来实现发牌操作。

下面是实现代码:

import java.util.ArrayList;

import java.util.Collections;

public class Card {

private static ArrayList list = new ArrayList<>();

private static String[] colors = {"黑桃","红桃","梅花","方块"};

private static String[] nums = {"A","2","3","4","5","6","7","8","9","10","J","Q","K"};

private static String[] jokers = {"Joker","joker"}; //大小王

private static ArrayList A = new ArrayList<>(); //小人A

private static ArrayList B = new ArrayList<>(); //小人B

private static ArrayList C = new ArrayList<>(); //小人C

private static ArrayList D = new ArrayList<>(); //小人D

//初始化扑克牌

public static void initCards(boolean need){

for(String color:colors){

for (String num:nums) {

list.add(color + num);

}

}

//是否添加大小王

if (need) {

list.add(jokers[0]);

list.add(jokers[1]);

}

}

//洗牌

public static void xiPai(){

Collections.shuffle(list);

}

//性感荷官,在线发牌

public static void faPai(){

A.clear();

B.clear();

C.clear();

D.clear();

for (int i = 0; i < list.size();i++) {

if (i%4 == 0) {

A.add(list.get(i));

}

if (i%4 == 1) {

B.add(list.get(i));

}

if (i%4 == 2) {

C.add(list.get(i));

}

if (i%4 == 3) {

D.add(list.get(i));

}

}

}

//主方法

public static void main(String args[]){

initCards(true);

xiPai();

faPai();

System.out.print("小人A" + A + "\n");

System.out.print("小人B" + B + "\n");

System.out.print("小人C" + C + "\n");

System.out.print("小人D" + D + "\n");

}

}

下面是运行结果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

用java制作扑克牌_Java实现扑克牌洗牌和发牌相关推荐

  1. 编程模拟洗牌和发牌过程c语言,洗牌发牌模拟系统课程设计报告.doc

    集美大学诚毅学院 <高级语言程序设计>课程设计 实验报告 题目:洗牌和发牌模拟 专业:计算机科学与技术 班级: 姓名: 成绩: 指导教师: 完成日期:2008 年 6月 26 日 一.目的 ...

  2. 洗牌、发牌算法 (打乱扑克牌顺序)

      #include <stdio.h> #include <stdlib.h> #include <time.h> int  d[6]; int  i,n,a,b ...

  3. Java——集合(模拟斗地主洗牌和发牌进行排序)

    //改进版,没有进行按牌的地位从小到大排序 package com.yy.test;import java.util.ArrayList; import java.util.Collections;p ...

  4. Java中使用HashMap,TreeSet和List来实现模拟斗地主的洗牌和发牌的小例子

    模拟斗地主洗牌,发牌  使用HashMap,TreeSet和List来实现 效果如下图所示: 详细实现代码如下: package star.july.tags;import java.util.Arr ...

  5. Java斗地主算法的设计与实现_斗地主算法的设计与实现–洗牌和发牌

    本篇将给出斗地主算法的源码,介绍斗地主这个项目的一些基本情况. 下载地址:http://download.csdn.net/detail/fansunion/6387589 特别说明:斗地主项目的主要 ...

  6. Java实现模拟斗地主洗牌、发牌、看牌并排序

    1.模拟斗地主洗牌.发牌.看牌 /* * 模拟斗地主洗牌.发牌.看牌*/package PokerDemo;import java.util.ArrayList; import java.util.C ...

  7. Java实现斗地主游戏中洗牌,发牌,牌顺序逻辑

    需求: 在启动游戏房间时,应提前准备好54张牌完成洗牌,发牌,牌顺序逻辑. 分析: 1.当系统启动的同时需要准备好数据的时候,就可以用静态代码块了. 2.洗牌就是打乱牌的顺序. 3.定义三个玩家.依次 ...

  8. 斗地主棋牌类游戏中的洗牌和发牌算法

    前言 洗牌和发牌是棋牌类游戏中,非常重要的两个关键节点,而这两个关键节点涉及的算法,很多同学非常感兴趣,今天,我们就以NodeJS环境为例,通过JS代码给大家解说洗牌和发牌算法. 一. 洗牌算法 1. ...

  9. 斗地主三步走——洗牌、发牌和看牌

    相信大家都玩过牌游斗地主吧,今天呢,阿Q就带大家写一个简单的斗地主的洗牌.发牌和看牌的小Demo. public static void main(String[] args) {//1,买一副扑克, ...

  10. 模拟斗地主洗牌及发牌

    1,模拟斗地主洗牌和发牌并对牌进行排序的代码实现:创建一个集合对象,并将扑克牌储存进去.HashMap存储索引和扑克牌.拼接扑克牌将索引和扑克牌在hm中(获取数字颜色后将索引0-51添加到list集合 ...

最新文章

  1. java 摘要算法_Java实现消息摘要算法加密
  2. Apache Torque入门学习
  3. RPC框架原理及从零实现系列博客(二):11个类实现简单RPC框架
  4. 转:数学之美番外篇:平凡而又神奇的贝叶斯方法 收藏
  5. 机器学习实战(用Scikit-learn和TensorFlow进行机器学习)(三)
  6. python3九九乘法表儿歌下载_python3的基础学习之九九乘法表和format函数,值得收藏...
  7. LeetCode547. Friends Circles 利用union find | bfs | dfs三种方法解决
  8. Linux硬链接和软链接
  9. 将稍大文件存储到远程SQL Server服务器
  10. php laravel框架失败_急急急!!!ubuntu+laravel+nginx安装完成后,请求laravel框架失败...
  11. LeetCode中等题之整数转罗马数字
  12. 新中大 金蝶 用友产品技术比较
  13. C++中局部变量和全局变量的存储位置和内存回收机制
  14. 轻量化Json开源格式化工具-JSON Formatter
  15. STM32单片机RGB红蓝调光植物补光系统红光蓝光PWM调色调节亮度
  16. 【2017.10.08 智能驾驶/汽车电子】汽车电控常用英文缩写及功能之一
  17. 使用Bootstrap建立网站微金所——头部
  18. iThoughtsX for Mac 5.29iOS 和 OS X 上的思维导图实用程序。
  19. 中科院自动化所利用光学定位系统实现多智能体编队避障
  20. 场内场外交易成本_场内基金与场外基金各有什么优劣势?

热门文章

  1. 计算深度学习评价指标Precision、Recall、F1
  2. 计算机需不需要考英语口语,哪些专业需要英语口语考试
  3. 店宝宝:淘宝特价版怎么玩?
  4. Computer:如何将表格以正确地姿势从Excel文件复制粘贴到word文件中(保证两个数据源一致)
  5. Windows10家庭版找不到组策略gpedit.msc怎么办
  6. AGM FPGA之AG10K 系列的开发建议
  7. starrocks部署准备
  8. jQuery几个经典表单应用整理回顾
  9. Android Studio 笔记1.3 安卓应用目录结构
  10. 蓝牙三国q 1.92 java,蓝牙三国杀killhd