用java制作扑克牌_Java实现扑克牌洗牌和发牌
本文实例为大家分享了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实现扑克牌洗牌和发牌相关推荐
- 编程模拟洗牌和发牌过程c语言,洗牌发牌模拟系统课程设计报告.doc
集美大学诚毅学院 <高级语言程序设计>课程设计 实验报告 题目:洗牌和发牌模拟 专业:计算机科学与技术 班级: 姓名: 成绩: 指导教师: 完成日期:2008 年 6月 26 日 一.目的 ...
- 洗牌、发牌算法 (打乱扑克牌顺序)
#include <stdio.h> #include <stdlib.h> #include <time.h> int d[6]; int i,n,a,b ...
- Java——集合(模拟斗地主洗牌和发牌进行排序)
//改进版,没有进行按牌的地位从小到大排序 package com.yy.test;import java.util.ArrayList; import java.util.Collections;p ...
- Java中使用HashMap,TreeSet和List来实现模拟斗地主的洗牌和发牌的小例子
模拟斗地主洗牌,发牌 使用HashMap,TreeSet和List来实现 效果如下图所示: 详细实现代码如下: package star.july.tags;import java.util.Arr ...
- Java斗地主算法的设计与实现_斗地主算法的设计与实现–洗牌和发牌
本篇将给出斗地主算法的源码,介绍斗地主这个项目的一些基本情况. 下载地址:http://download.csdn.net/detail/fansunion/6387589 特别说明:斗地主项目的主要 ...
- Java实现模拟斗地主洗牌、发牌、看牌并排序
1.模拟斗地主洗牌.发牌.看牌 /* * 模拟斗地主洗牌.发牌.看牌*/package PokerDemo;import java.util.ArrayList; import java.util.C ...
- Java实现斗地主游戏中洗牌,发牌,牌顺序逻辑
需求: 在启动游戏房间时,应提前准备好54张牌完成洗牌,发牌,牌顺序逻辑. 分析: 1.当系统启动的同时需要准备好数据的时候,就可以用静态代码块了. 2.洗牌就是打乱牌的顺序. 3.定义三个玩家.依次 ...
- 斗地主棋牌类游戏中的洗牌和发牌算法
前言 洗牌和发牌是棋牌类游戏中,非常重要的两个关键节点,而这两个关键节点涉及的算法,很多同学非常感兴趣,今天,我们就以NodeJS环境为例,通过JS代码给大家解说洗牌和发牌算法. 一. 洗牌算法 1. ...
- 斗地主三步走——洗牌、发牌和看牌
相信大家都玩过牌游斗地主吧,今天呢,阿Q就带大家写一个简单的斗地主的洗牌.发牌和看牌的小Demo. public static void main(String[] args) {//1,买一副扑克, ...
- 模拟斗地主洗牌及发牌
1,模拟斗地主洗牌和发牌并对牌进行排序的代码实现:创建一个集合对象,并将扑克牌储存进去.HashMap存储索引和扑克牌.拼接扑克牌将索引和扑克牌在hm中(获取数字颜色后将索引0-51添加到list集合 ...
最新文章
- java 摘要算法_Java实现消息摘要算法加密
- Apache Torque入门学习
- RPC框架原理及从零实现系列博客(二):11个类实现简单RPC框架
- 转:数学之美番外篇:平凡而又神奇的贝叶斯方法 收藏
- 机器学习实战(用Scikit-learn和TensorFlow进行机器学习)(三)
- python3九九乘法表儿歌下载_python3的基础学习之九九乘法表和format函数,值得收藏...
- LeetCode547. Friends Circles 利用union find | bfs | dfs三种方法解决
- Linux硬链接和软链接
- 将稍大文件存储到远程SQL Server服务器
- php laravel框架失败_急急急!!!ubuntu+laravel+nginx安装完成后,请求laravel框架失败...
- LeetCode中等题之整数转罗马数字
- 新中大 金蝶 用友产品技术比较
- C++中局部变量和全局变量的存储位置和内存回收机制
- 轻量化Json开源格式化工具-JSON Formatter
- STM32单片机RGB红蓝调光植物补光系统红光蓝光PWM调色调节亮度
- 【2017.10.08 智能驾驶/汽车电子】汽车电控常用英文缩写及功能之一
- 使用Bootstrap建立网站微金所——头部
- iThoughtsX for Mac 5.29iOS 和 OS X 上的思维导图实用程序。
- 中科院自动化所利用光学定位系统实现多智能体编队避障
- 场内场外交易成本_场内基金与场外基金各有什么优劣势?
热门文章
- 计算深度学习评价指标Precision、Recall、F1
- 计算机需不需要考英语口语,哪些专业需要英语口语考试
- 店宝宝:淘宝特价版怎么玩?
- Computer:如何将表格以正确地姿势从Excel文件复制粘贴到word文件中(保证两个数据源一致)
- Windows10家庭版找不到组策略gpedit.msc怎么办
- AGM FPGA之AG10K 系列的开发建议
- starrocks部署准备
- jQuery几个经典表单应用整理回顾
- Android Studio 笔记1.3 安卓应用目录结构
- 蓝牙三国q 1.92 java,蓝牙三国杀killhd