package com.example.poker;

import java.util.ArrayList;

import java.util.Collections;

import java.util.List;

import java.util.Random;

import java.util.Scanner;

public class PockerTest {

public String[] colorType = { "梅花", "草花", "方块", "红桃" };

public String[] number = { "A", "2", "3", "4", "5", "6", "7", "8", "9",

"J", "Q", "K" };

public List pockers;

public List pockerName;

public Scanner console;

public List pocke1;

public List pocke2;

public Player player1;

public Player player2;

public List player1Pockers;

public List player2Pockers;

public PockerTest() {

pockers = new ArrayList();

player1Pockers = new ArrayList();

player2Pockers = new ArrayList();

pockerName = new ArrayList();

console = new Scanner(System.in);

pocke1 = new ArrayList();

pocke2 = new ArrayList();

player1 = new Player();

player2 = new Player();

}

public void createPlayer() {

}

public void createPocker() {

for (int i = 0; i < 4; i++) {

for (int j = 0; j < 12; j++) {

// pockerName.add(colorType[i] + "" + number[j]);

Pocker pocker = new Pocker(colorType[i], number[j]);

pockers.add(pocker);

}

}

// Collections.shuffle(pockers);

}

public void deal() {

Collections.shuffle(pockers);

System.out.println("请输入Player1的ID:");

String playerID1 = console.next();

System.out.println("玩家" + playerID1 + "登入成功");

System.out.println("请输入Player2的ID:");

String playerID2 = console.next();

System.out.println("玩家" + playerID2 + "登入成功");

System.out.println("-------------游戏开始-----------------");

System.out.println("-------------开始发牌-----------------");

for (int i = 0; i < 4; i++) {

if (i == 0) {

System.out.println("玩家" + playerID1 + "拿牌");

Pocker pocker = pockers.get(i);

player1Pockers.add(pocker);

} else if (i == 1) {

System.out.println("玩家" + playerID2 + "拿牌");

Pocker pocker = pockers.get(i);

player2Pockers.add(pocker);

} else if (i == 2) {

System.out.println("玩家" + playerID1 + "拿牌");

Pocker pocker = pockers.get(i);

player1Pockers.add(pocker);

} else if (i == 3) {

System.out.println("玩家" + playerID2 + "拿牌");

Pocker pocker = pockers.get(i);

player2Pockers.add(pocker);

}

System.out.println("---------------发牌结束---------");

}

player1 = new Player(playerID1, player1Pockers);

player2 = new Player(playerID2, player2Pockers);

Pocker pocker1 = getTheLargestPoker(player1);

Pocker pocker2 = getTheLargestPoker(player2);

System.out.println(player1.id+"最大的牌为:"+pocker1.colorType+pocker1.number);

System.out.println(player2.id+"最大的牌为:"+pocker2.colorType+pocker2.number);

if(compare(pocker1,pocker2)){

System.out.println("获胜者:"+player1.id);

}else{

System.out.println("获胜者:"+player2.id);

}

System.out.println("玩家" + playerID1 + "牌为:"

+ player1.pocker.get(0).colorType + ""

+ player1.pocker.get(0).number + ","

+ player1.pocker.get(1).colorType + ""

+ player1.pocker.get(1).number);

System.out.println("玩家" + playerID2 + "牌为:"

+ player2.pocker.get(0).colorType + ""

+ player2.pocker.get(0).number + ","

+ player2.pocker.get(1).colorType + ""

+ player2.pocker.get(1).number);

}

public void createPockerName() {

System.out.println("----------------创建好牌------------");

for (Pocker pocker : pockers) {

// pockerName.add(pocker.colorType + pocker.number);

System.out.print(pocker.colorType + pocker.number+",");

}

System.out.println("");

}

public Boolean compare(Pocker o1, Pocker o2) {

// TODO Auto-generated method stub

String num = "345678910JQKA2";

String suit = "方片梅花红桃黑桃";

int numo1 = num.indexOf(o1.number);

int numo2 = num.indexOf(o2.number);

int colo1 = suit.indexOf(o1.colorType);

int colo2 = suit.indexOf(o2.colorType);

if (numo1 > numo2) {

return true;

} else if (numo1 < numo2) {

return false;

} else {

if (colo1 > colo2)

return true;

else

return false;

}

}

public Pocker getTheLargestPoker(Player one) {

Pocker p1 = one.pocker.get(0);

Pocker p2 = one.pocker.get(1);

if (compare(p1, p2))

return p1;

else

return p2;

}

public static void main(String args[]) {

PockerTest pt = new PockerTest();

pt.createPocker();

pt.createPockerName();

pt.deal();

}

}

java 记牌_java的Collection工具类编写简单的扑克牌比大小相关推荐

  1. java 记牌_JAVA入门第三季——简易扑克牌

    package PlayingCards; /** * * * 定义扑克牌类 * @author Administration * */ public class Card { private int ...

  2. JDBC--C3P0连接池的工具类编写以及功能测试

    JDBC–C3P0连接池的工具类编写以及功能测试 使用时要导入c3p0的工具包(jar包)和mysql的驱动包和对应的配置文件 首先创建一个数据库,并在其中创建一张表 CREATE DATABASE ...

  3. 后台数据库连接以及工具类编写 [木字楠博客]

    文章目录 1.项目连接数据库 1.1.引入依赖信息 1.2.编写配置文件 1.3.新增数据库配置类 1.4.代码生成器编写 2.通用枚举类编写 3.统一结果集处理器 4.其他工具类 4.1.Bean拷 ...

  4. java度量页面_JAVA Metrics 度量工具使用介绍1

    Metrics是一个给JAVA提供度量工具的包,在JAVA代码中嵌入Metrics代码,可以方便的对业务代码的各个指标进行监控,同一时候,Metrics可以非常好的跟Ganlia.Graphite结合 ...

  5. java 静态类 安全_Java静态static工具类线程安全问题研究

    针对静态方法有以下一些前提: 静态方法和实例方法的区别是静态方法只能引用静态变量,静态方法通过类名来调用,实例方法通过对象实例来调用 每个线程都有自己的线程栈,栈与线程同时创建,每一个虚拟机线程都有自 ...

  6. java导出类_java导出excel工具类

    java导出excel须要使用HSSFWorkbook这个类,须要导入poi-3.6-20091214.jar 工具类调用例如以下: package com.qlwb.business.util; i ...

  7. java 洗牌_java数组之完美洗牌算法

    题目详情 有个长度为2n的数组{a1,a2,a3,...,an,b1,b2,b3,...,bn},希望排序后{a1,b1,a2,b2,....,an,bn},请考虑有无时间复杂度o(n),空间复杂度0 ...

  8. java 微型数据库_Java 9代码工具:使用Java微型基准测试工具的实践会话

    java 微型数据库 用肉眼看,基准测试似乎只是确定执行某些代码需要花费多长时间的简单问题. 但是,通常情况下,这是幼稚的方法. 提供具有准确和可重复结果的有意义的基准并非易事. 在本文中,我们将向您 ...

  9. java洗牌_java语言实现简单的洗牌,发牌

    packagecom.java.lei.homework;importjava.util.Arrays;importjava.util.Random;public classPokerGame {// ...

最新文章

  1. Python Scipy 科学计算库
  2. Linux headtail命令
  3. APP上架证书无效:解决
  4. RabbitMQ架构
  5. oracle表数据如何恢复,ORACLE如何恢复被delete的表数据
  6. linux bogomips,内核探索:Linux BogoMips 探秘
  7. 经商失败的人,最可怕的不是失去金钱,而是失去信心
  8. list -- set方法——替换列表中指定位置的元素
  9. php+tcpdf+表格,PHP使用tcpdf类生成PDF文件
  10. DAY 3 字符串、列表、字典练习 - 班级按成绩分组小程序快递分拣小程序
  11. 自监督学习(self-supervised learning)(20201124)
  12. 英雄的黎明-纯音乐-横山菁儿
  13. 7-2 符号配对 (25 分)(C语言版)
  14. 【华为OD机试真题 Java】找出通过车辆最多颜色 (A卷2022Q4)
  15. tcpdump抓包IP地址,导入wireshark分析?又名《~来抓包吧/ 向着前辈の步伐、Start / ~从零开始の抓包全过程流水账实录/// 成功吧~实验/ ~》
  16. 【博客8】缤果PyQt5串口调试助手V1.1(初级篇)
  17. jmeter--重新安装安装JDK
  18. Matlab中的snr
  19. 智慧军营部队车辆管理系统软件
  20. 揭开移动 APM 的五大神秘面纱

热门文章

  1. 基于javaweb高校教材管理系统的设计与实现
  2. C语言计算100的阶乘
  3. postman导出请求url_Postman教程——设置
  4. 常用数据结构与常用算法,
  5. js字符串与64进制的转换
  6. 【C++】STL(标准模板库)简介
  7. 土味网红崛起的背后,是不为人知的心酸
  8. 可以独立部署的抽奖助手小程序如何开发搭建一览
  9. Merkle Patricia Tree 梅克尔帕特里夏树(MPT)详细介绍
  10. 计算机毕业设计 SSM养老院管理系统 智慧养老院管理系统 养老院信息管理系统Java Vue MySQL数据库 远程调试 代码讲解