java斗地主案例,没有界面
import java.util.ArrayList;
import java.util.Collections;
public class Duodizhu {
/*
准备牌
定义一个放52张牌的集合,定义2个数组,一个放花色,一个放牌号,
大王小王要特殊定义
/
public static void main(String[] args) {
ArrayList list=new ArrayList<>();
String[] color={“♠”,“♦”,“♣”,“♥”,};
String[] num={“2”,“A”,“K”,“Q”,“J”,“10”,“9”,“8”,“7”,“6”,“5”,“4”,“3”};
list.add(“大王”);
list.add(“小王”);
//花色与牌号进行组合
for(String colors:color){
for (String numpai:num){
list.add(colors+numpai);
}
}
//System.out.println(list);//查看是否正确
/
洗牌
通过集合工具类collections的方法进行集合随机排序
/
Collections.shuffle(list);
//System.out.println(list);//查看是否洗牌
/
发牌
定义4个集合,3个集合用来放3个玩家的手牌,最后一个集合用来放3张底牌
通过list的集合索引(就是总牌数)%3 得到0 1 2 0 1 2(for循环遍历),所以当得出0时,发给第一个玩家
得出1时,给第二个玩家,2时给第三个玩家。注意要留底牌,所以当i>=51时给底牌发牌
*/
ArrayList play1=new ArrayList<>();
ArrayList play2=new ArrayList<>();
ArrayList play3=new ArrayList<>();
ArrayList dipai=new ArrayList<>();
for (int i = 0; i < list.size(); i++) {
if (i>=51){
dipai.add(list.get(i));
}else if(i%30) {
play1.add(list.get(i));
}else if(i%31) {
play2.add(list.get(i));
}else if(i%3==2) {
play3.add(list.get(i));
}
}//看牌System.out.println("一号"+play1);System.out.println("二号"+play2);System.out.println("三号"+play3);System.out.println("底牌"+dipai);
}
}
java斗地主案例,没有界面相关推荐
- JAVA斗地主案例(单列)
JAVA斗地主案例(单列) 一.案例分析 二.代码实现 一.案例分析 准备牌 扑克牌:54张 特殊派:大王,小王 花色:"♥","♠","♣" ...
- Java(斗地主案例)
斗地主案例的需求分析 斗地主案例的代码实现 package com.itheima.demo04.Test;import java.util.ArrayList; import java.util.C ...
- java 斗地主 案例
package zyr.doudizhu;/* * 54张牌 3个玩家 没人17张牌 最后3张留作底牌 * 1准备牌 * 2洗牌 * 3发牌 * 4看牌 * */import java.util.Ar ...
- 斗地主 java思路_使用Java实现简单的斗地主案例
使用Java实现简单的斗地主案例 案例说明:使用Java实现简单的斗地主洗牌发牌的操作: 具体规则: 共有54张牌,顺序打乱: 三个玩家参与游戏,三人交替摸牌,每人17张牌,最后留三张为底牌(地主牌) ...
- Java实现简单的斗地主案例(超详细代码)
案例说明:使用Java实现简单的斗地主洗牌发牌的操作 具体规则: 共有54张牌,顺序打乱: 三个玩家参与游戏,三人交替摸牌,每人17张牌,最后留三张为底牌(地主牌). 源码实现: /** 斗地主案例: ...
- java基础-Map集合、Collections集合、斗地主案例
1.Map集合 1.1Map集合概述和特点 Map集合概述 interface Map<K,V> K:键的类型:V:值的类型 Map集合的特点 (1)键值对映射关系 (2)一个键对应一个值 ...
- string转map集合_Map、斗地主案例
一.Map方法 import java.util.HashMap; import java.util.Map; public class Demo01 {public static void main ...
- java进阶案例下载_java进阶案例
java进阶案例: 数据类型,字符,数值,范围,布尔 :byte -128~127. 面向对象:protect :重载与构造 (一). this封装:static:继承:多态: 1.方法覆盖:supe ...
- JAVA Swing 图形化界面编程
JAVA Swing 图形化界面编程 目录 1.组件 1.1 基本组件 1.2. 组件边框 1.3. JToolBar 工具条 1.4 JColorChooser 颜色选择器 1.5 JFileCho ...
最新文章
- java.lang.OutOfMemoryError: Java heap space的解决办法
- 利用被入侵的路由器迈入内网——抓包,利用路由器漏洞入侵,进行流量劫持...
- opt文件夹下没有ros_ubuntu16.04下ROS操作系统学习笔记(二)
- VTK:Rendering之WalkCow
- python内置数据结构字符串
- SLAM: Ubuntu14.04_Kylin安装ROS-Indigo
- python3转码python2_python2写的代码移植到python3后无法转码成中文文本,请大神指教,谢谢~...
- 锁和并发性----隔离级别
- 计算机安装最新的安全补丁,Win10不要装!微软发布4月安全补丁合集
- php网址图片怎么转based4,Ionic4 Base64 转化成图片插件-Base64 转化成图片Base64 To Gallery - Ionic Native...
- Python中的音频和数字信号处理(DSP)
- 得具备点靠钱赚钱的能力
- 随机信号分析学习笔记(5)
- Structs框架原理
- 科研工作者要会的技能----查找顶刊会议或期刊的方法
- wps打印预览工具栏消失_在WPS电子表格中看不到打印预览怎么办?
- 身份证中出生年月的提取
- OpenCV+Mediapipe人物动作捕捉与Unity引擎的结合
- AlphaSSL证书和GlobalSign SSL证书介绍
- 卷积神经网络理解(一):滤波器的意义
热门文章
- 利用samba漏洞入侵linux主机(samba低版本漏洞利用)
- 浏览器 重定向次数限制_浏览器重定向(302)限制问题
- springboot+vue幼儿园管理系统(源码+文档)
- 计算机if语句翻译,5.4.1 if 语句的翻译
- 路由交换技术一二章总结
- 进入微信后提示用浏览器打开
- 20多份软件测试报告模板(标准版)一份优秀测试报告模板流程
- Xilinx ZYNQ开发板资料共享
- python生成ppt图表_使用Python从Excel到PowerPoint的图表
- 想开服,又没有技术怎么办?传奇开服技术要学多久?开服技术好学吗