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

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();

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值