import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.Set; import static java.util.Map.Entry;
public class DouDiZhu { public static void main(String[] args) {
ArrayList<Integer> pook = new ArrayList<Integer>();
HashMap<Integer,String> hm =new HashMap<Integer,String>(); String[] str1 = { "♥","♣","♦","♠"};
String[] str2 = {"2","A","K","Q","J","10","9","8","7","6","5","4","3"}; int index = 2;
for(String s2 :str2) {
for(String s1 : str1) {
hm.put(index, s1+s2);
pook.add(index);
index++;
}
}
hm.put(0, "大王");
pook.add(0);
hm.put(1, "小王");
pook.add(1); Collections.shuffle(pook); ArrayList<Integer> player1= new ArrayList<Integer>();
ArrayList<Integer> player2 = new ArrayList<Integer>();
ArrayList<Integer> player3 = new ArrayList<Integer>();
ArrayList<Integer> bottom = new ArrayList<Integer>(); for (int i = 0; i < pook.size(); i++) { if(i < 3) {
bottom.add(pook.get(i));
}else if(i % 3 == 0) {
player1.add(pook.get(i));
}else if(i % 3 == 1) {
player2.add(pook.get(i));
}else if(i % 3 == 2) {
player3.add(pook.get(i));
} }
Collections.sort(player1);
Collections.sort(player2);
Collections.sort(player3);
Collections.sort(bottom); look("赌神",hm,player1); } public static void look(String name,HashMap<Integer,String> ss,ArrayList<Integer> ii) {
System.out.print(name+":");
for(Integer i : ii) {
System.out.print(ss.get(i)+" ");
}
System.out.println();
} }

java ->斗地主洗牌的更多相关文章

  1. Java基础知识强化之集合框架笔记71:模拟斗地主洗牌和发牌并对牌进行排序的案例

    1. 模拟斗地主洗牌和发牌并对牌进行排序的原理图解: 2. 代码实现: 思路: • 创建一个HashMap集合 • 创建一个ArrayList集合 • 创建花色数组和点数数组 • 从0开始往HashM ...

  2. Java基础知识强化之集合框架笔记70:模拟斗地主洗牌和发牌(ArrayList)

    1. 模拟斗地主洗牌和发牌 分析:     A:创建一个牌盒     B:装牌     C:洗牌     D:发牌     E:看牌 2. 代码实现: package cn.itcast_03; im ...

  3. Map集合、HashMap集合、LinkedHashMap集合、Hashtable集合、Collections工具类和模拟斗地主洗牌和发牌

    1.Map集合概述和特点 * A:Map接口概述  * 查看API可以知道:          * 将键映射到值的对象          * 一个映射不能包含重复的键          * 每个键最多 ...

  4. java集合--模拟斗地主发牌洗牌

    import java.util.*; /** * @Date: 2020/6/17 19:53 */public class Test04 { public static void main(Str ...

  5. java 模拟斗地主发牌洗牌

    一 模拟斗地主洗牌发牌 1.案例需求 按照斗地主的规则,完成洗牌发牌的动作. 具体规则: 1. 组装54张扑克牌 2. 将54张牌顺序打乱 3. 三个玩家参与游戏,三人交替摸牌,每人17张牌,最后三张 ...

  6. Java斗地主案例、异常和自定义异常整理

    模拟斗地主洗牌发牌 1.1 案例介绍 按照斗地主的规则,完成洗牌发牌的动作. 具体规则: 1. 组装54张扑克牌 2. 将54张牌顺序打乱 3. 三个玩家参与游戏,三人交替摸牌,每人17张牌,最后三张 ...

  7. Java学习笔记34(集合框架八:综合案例:模拟斗地主的洗牌发牌)

    规则: 1.54张扑克牌,有花色 2.顺序打乱,一人一张依次发牌,一人17张,留三张作为底牌 3.看牌:按大小王2A....43的序排列打印 示例: package demo; import java ...

  8. java斗地主扑克 扑克牌 洗牌 发牌 Collection 集合练习

    package com.swift.poker; import java.util.ArrayList; import java.util.Collections; /*训练考核知识点:Collect ...

  9. Java模拟斗地主发牌和洗牌

    package cn.itcast_04; import java.util.ArrayList; import java.util.Collections; import java.util.Has ...

随机推荐

  1. python 基础篇 类基础与继承

    先来简单解释几个概念 类:一群有着相同属性和函数的对象的集合,这里对应 Python 的 class. 对象:集合中的一个事物,这里对应由 class 生成的某一个 object,比如代码中的 har ...

  2. Android App安全渗透测试(一)

    一.            实验环境搭建 1.      安装JDK 2.      安装Android Studio 3.      模拟器或真机 我的是夜神模拟器和nexus 工具 Apktool ...

  3. 一篇文章掌握网页解析神器——xpath

    学爬虫不会xpath解析数据? 今天老师带你一堂课带你从零开始精通xpath,从此轻松提取网页信息. 我们在爬虫的过程中,经常会遇到html字符串数据,很多我们需要的数据不是作为标签的文本就是作标签的 ...

  4. spring-boot-lll-starter自动化框架介绍

    1. spring-boot-lll-starter自动化框架介绍 1.1. 前言 舔着脸来介绍一波我刚写的自动化框架,spring-boot-lll-starter框架是经由我企业实战总结的一套,适 ...

  5. Scrapy中的crawlspider

    crawlspider 能自动的获取url并提交请求 命令:scrapy genspider -t crawl spidername 'example.cn' 所导入的模块 # -*- coding: ...

  6. 2019-2020-20199303《Linux内核原理与分析》第四周作业

    构造一个简单的Linux内核 Linux是一种开源电脑操作系统内核,它是一个用C语言写成.主要子系统: 1.系统调用接口 2.进程管理 3.内存管理 4.虚拟文件系统 qemu是一个开源模拟处理器,在 ...

  7. docker企业级镜像仓库Harbor管理

    Harbor概述 Harbor是由VMWare公司开源的容器镜像仓库.事实上,Harbor是在Docker Registry上进行了相应的企业级扩展,从而获得了更加广泛的应用,这些新的企业级特性包括: ...

  8. QtConcurrent::run() 只能运行参数个数不超过5的函数

    有时不得不看源码 qtconcurrentrun.h template <typename T, typename Param1, typename Arg1, typename Param2, ...

  9. 【JAVA基础】06 面向对象

    1. 面向对象思想概述 面向过程思想概述 第一步 第二步 面向对象思想概述 找对象(第一步,第二步) 举例 买煎饼果子 洗衣服 面向对象思想特点 是一种更符合我们思想习惯的思想 可以将复杂的事情简单化 ...

  10. JS代码规范

    JS代码规范 空格 二元运算符两侧必须有一个空格,一元运算符与操作对象之间不允许有空格. var a = !arr.length; a++; a = b + c; 复制代码 用作代码块起始的左花括号 ...