package?com.puke;
public?class?Poker?{
/**
?*?撲克類
?*/
private?String?num;???//撲克點(diǎn)
private?String?flower;??//撲克花
private?String?poker;???//一張撲克
public??Poker(String?pnum,String?pflower)?{
this.num?=?pnum;
this.flower?=?pflower;
this.poker?=?pflower+pnum;
}
/**
?*?獲取撲克點(diǎn)數(shù)
?*?@return
?*?由于根據(jù)默認(rèn)字符串的比較規(guī)則??10是比2?.?3?.??4?....9?要小的???
?*?字符串的默認(rèn)排序規(guī)則是??先排數(shù)字第一位??如果相等比較第二位?..?然后在大寫字母???小寫字母??依次類推
?*?這里的??10?J?Q?K?A??要返回一個(gè)數(shù)字類型的字符串?用來(lái)給撲克排序?
?*/
public?String?getPokerNum(){
if?(this.num?==?"10")?{
this.num?=?"91";
}else?if?(this.num?==?"J")?{
this.num?=?"92";
}else?if?(this.num?==?"Q")?{
this.num?=?"93";
}else?if?(this.num?==?"K")?{
this.num?=?"94";
}else?if?(this.num?==?"A")?{
this.num?=?"1";
}
return?this.num;
}
/**
?*?獲取撲克的花
?*?@return
?*/
public?String?getPokerFlower(){
????return?this.flower;
}
@Override
public?String?toString()?{
return??poker;
}
@Override
public?int?hashCode()?{
final?int?prime?=?31;
int?result?=?1;
result?=?prime?*?result?+?((flower?==?null)???0?:?flower.hashCode());
result?=?prime?*?result?+?((num?==?null)???0?:?num.hashCode());
return?result;
}
@Override
public?boolean?equals(Object?obj)?{
if?(this?==?obj)
return?true;
if?(obj?==?null)
return?false;
if?(!(obj?instanceof?Poker))
return?false;
Poker?other?=?(Poker)?obj;
if?(flower?==?null)?{
if?(other.flower?!=?null)
return?false;
}?else?if?(!flower.equals(other.flower))
return?false;
if?(num?==?null)?{
if?(other.num?!=?null)
return?false;
}?else?if?(!num.equals(other.num))
return?false;
return?true;
}
}
==================================================================
package?com.puke;
import?java.util.Comparator;
public?class?PokerComparator?implements?Comparator<Poker>?{
/**
?*?比較規(guī)則類
?*/
@Override
//比較優(yōu)先級(jí)?先比較點(diǎn)數(shù)??點(diǎn)數(shù)相同再比較花色
public?int?compare(Poker?arg0,?Poker?arg1)?{
????String?num0?=?((Poker)?arg0).getPokerNum();
????String?num1?=?((Poker)?arg1).getPokerNum();
????int?ret?=?0;
????if((ret?=?num0.compareTo(num1))?==?0){
???? String?flw0?=?((Poker)?arg0).getPokerFlower();
???? String?flw1?=?((Poker)?arg1).getPokerFlower();
???? ret?=?flw0.compareTo(flw1);
????}
????return?ret;
}
}
===============================================================
package?com.puke;
import?java.util.ArrayList;
import?java.util.List;
/**
?*?玩家類
?*?@author?momo1a@qq.com
?*?
?*
?*/
public?class?Player?{
private?int?ID;????//玩家ID
private?String?name;??//玩家名字
private?List<Poker>??pokerCard;??//玩家手牌集合
/**
?*?無(wú)參構(gòu)造
?*/
public??Player()?{
}
/**
?*?初始化玩家
?*?@param?ID??玩家ID
?*?@param?name??玩家用戶名
?*?初始化手牌類
?*/
public??Player(int?ID,String?name)?{
this.pokerCard?=?new?ArrayList<Poker>();
this.ID?=?ID;
this.name?=?name;
}
/**
?*?獲取用戶ID
?*?@return??用戶ID
?*/
public?int??getPlayerID(){
return?this.ID;
}
/**
?*?設(shè)置用戶ID
?*?@param?ID
?*/
public?void?setPlayerID(int?ID)?{
this.ID?=?ID;
}
/**
?*?獲取用戶名
?*?@return?用戶名
?*/
public?String?getPlayerName(){
return?this.name;
}
????/**
?????*?設(shè)置用戶名
?????*?@param?name
?????*/
public?void?setPlayerName(String?name)?{
this.name?=?name;
}
/**
?*?設(shè)置玩家手牌
?*?@param?poker??
?*?
?*/
public?void?setPokerCard(Poker?poker){
this.pokerCard.add(poker);
}
/**
?*?獲取玩家手牌
?*?@return?玩家手牌集合
?*/
public?List<Poker>?getPokerCard(){
return?this.pokerCard;
}
@Override
public?String?toString()?{
return??name;
}
}
===============================================================
package?com.puke;
import?java.util.ArrayList;
import?java.util.Collections;
import?java.util.List;
import?java.util.Random;
import?java.util.Scanner;
?
public?class?PlayGame?{
private?String?numbers[]={"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
????private?String?flowers[]={"方塊","梅花","紅桃","黑桃"};
????private?List<Poker>?pokerList;????//一副撲克的集合
????private?List<Player>?players;?????//玩家集合
????private?List<Poker>?maxPokerList;??//出牌的集合??(也就是各自拿來(lái)比較那張大牌的集合)
????/**
?????*?無(wú)參構(gòu)造方法?初始化一副撲克
?????*/
????public?PlayGame(){
???? players?=?new?ArrayList<Player>();
???? pokerList?=?new?ArrayList<Poker>();
???? maxPokerList?=?new?ArrayList<Poker>();
???? System.out.println("-----------創(chuàng)建撲克牌----------");
???? for?(int?i?=?0;?i?<?flowers.length;?i++)?{
for?(int?j?=?0;?j?<?numbers.length;?j++)?{
Poker?poker?=?new?Poker(numbers[j],?flowers[i]);
this.pokerList.add(poker);??//創(chuàng)建一張撲克就添加到撲克的集合
}
}
????????System.out.println("-----------撲克牌創(chuàng)建成功----------");
???? System.out.println("為:"+this.pokerList);
????}
????
????
????/**
?????*?洗牌功能
?????*/
????
????public?void?washPoker()?{
System.out.println("---------開始洗牌------------");
for?(int?i?=?0;?i?<?pokerList.size();?i++)?{
Random?random?=?new?Random();
int?j?=?random.nextInt(pokerList.size());
Poker?temp?=?pokerList.get(i);????//用一個(gè)變量保存?i位置的一張撲克
pokerList.set(i,?pokerList.get(j));??//用j位置(隨機(jī)長(zhǎng)生)的撲克替換i位置的撲克
pokerList.set(j,?temp);??//j位置的撲克就替換成原來(lái)i位置的撲克
}
System.out.println("---------洗牌結(jié)束!-----------");
}
????
????/**
?????*?創(chuàng)建玩家?并把玩家添加到玩家集合
?????*?輸入玩家的id必須為數(shù)字類型
?????*?
?????*/
????public?void?createPlayer(){
???? Scanner?input?=?new?Scanner(System.in);
???? this.washPoker();??????????//洗牌
???? System.out.println("請(qǐng)輸入兩位玩家的ID和用戶名");
???? for?(int?i?=?0;?i?<?2;?i++)?{
System.out.println("輸入第"+(i+1)+"位玩家ID:");
int?ID?=?0;
try?{
???? ????ID?=?input.nextInt();
???? ????System.out.println("輸入第"+(i+1)+"位玩家用戶名:");
}?catch?(Exception?e)?{
System.out.println("請(qǐng)輸入整數(shù)類型ID?。?!");
this.createPlayer();
} ????
???? String?name?=?input.next();?
???? players.add(new?Player(ID,?name));???//添加用戶到用戶集合中
???? }?
???? //輸出歡迎字樣
???? for?(int?i?=?0;?i?<?players.size();?i++)?{
????System.out.println("----歡迎玩家:"+players.get(i));
}
????}
????/**
?????*?發(fā)牌功能
?????*?從第一張開始發(fā)牌??輪流拿牌?各自發(fā)兩張牌
?????*/
????public?void?perPokerCard(){
???? System.out.println("-----開始發(fā)牌------");
???? for?(int?i?=?0,?n=0;?i?<?2;?i++)?{
for?(int?j?=?0;?j?<?players.size();?j++,n++)?{
this.players.get(j).setPokerCard(this.pokerList.get(n));
System.out.println("----玩家:"+players.get(j)+"-拿牌");
}
}
???? System.out.println("------發(fā)牌結(jié)束!!!------");
????}
????
????/**
?????*?開始玩游戲?比大小
?????*?比手牌大小的規(guī)則來(lái)自PokerComparator類
?????*?先比玩家的點(diǎn)數(shù)??A<2<3<4<5<6<7<8<9<10<J<Q<K
?????*?如果點(diǎn)數(shù)相同?在比較花色?方塊<梅花<紅桃<黑桃
?????*/
????public?void?playGame(){
???? System.out.println("----開始游戲...-----");
???? for?(int?i?=?0;?i?<?players.size();?i++)?{
System.out.println("玩家:"+players.get(i)+"最大的手牌為:"+?Collections.max(this.players.get(i).getPokerCard(),new?PokerComparator()));
maxPokerList.add(Collections.max(this.players.get(i).getPokerCard(),new?PokerComparator()));?//添加各自的大牌到一個(gè)List
}
???? Poker?winPoker?=?Collections.max(maxPokerList,?new?PokerComparator());??//比較大牌的List集合?決出?最大的一張撲克
???? //判斷最大那張撲克屬于誰(shuí)的?誰(shuí)就是勝利者
???? for?(int?i?=?0;?i?<?players.size();?i++)?{
if?(players.get(i).getPokerCard().contains(winPoker))?{
System.out.println("---------玩家:"+players.get(i)+"獲勝?!---------");
}
}
???? System.out.println("各自玩家的手牌為:");
???? for?(int?i?=?0;?i?<?players.size();?i++)?{
System.out.println(players.get(i)+":"+players.get(i).getPokerCard());
}
????}
}
==================================================================
package?com.puke;
public?class?ShowPlay?{
????/**
?????*?main()方法
?????*?@param?args
?????*/
public?static?void?main(String[]?args)?{
PlayGame?showpoker?=?new?PlayGame();?//初始化游戲??新建52張撲克
showpoker.createPlayer();?//新建玩家
showpoker.perPokerCard();?//發(fā)牌
showpoker.playGame();??//玩游戲?比大小
}
}
2016-02-20
// 創(chuàng)建一副牌
public class Poker {
private String num;//點(diǎn)數(shù)
private String flower;//花色
private String poker;//一張牌
public Poker(String pnum,String pflower){
this.num=pnum;
this.flower=pflower;
this.poker=num+flower;
}
// 用字符的比較規(guī)則,10比2,3,4...要小
public String getnum(){
if(num=="10"){
num="91";
}
else if(num=="J"){
num="92";
}
else if(num=="Q"){
num="93";
}
else if(num=="K"){
num="94";
}
else if(num=="A"){
num="1";
}
return this.num;
}
public String getFlower() {
return flower;
}
@Override
public String toString() {
return poker;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((flower == null) ? 0 : flower.hashCode());
result = prime * result + ((num == null) ? 0 : num.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (!(obj instanceof Poker))
return false;
Poker other = (Poker) obj;
if (flower == null) {
if (other.flower != null)
return false;
} else if (!flower.equals(other.flower))
return false;
if (num == null) {
if (other.num != null)
return false;
} else if (!num.equals(other.num))
return false;
return true;
}
}
import java.util.ArrayList;
import java.util.List;
public class Player{
private int id;
private String name;
private List<Poker>pokercard;
// 無(wú)參構(gòu)造
public Player(){
}
// 初始化玩家,手牌
public Player(int id,String name){
this.id = id;
this.name = name;
this.pokercard = new ArrayList<Poker>();
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public List<Poker> getPokercard() {
return this.pokercard;
}
public void setPokercard(Poker poker) {
this.pokercard.add(poker);
}
@Override
public String toString() {
return "Player [name=" + name + "]";
}
}
import java.util.Comparator;
public class PokerComparator implements Comparator<Poker> {
public int compare(Poker o1, Poker o2) {
String num1=(String)o1.getnum();
String num2=(String)o2.getnum();
int c=0;
if((c=num1.compareTo(num2))==0){
String flower1=(String )o1.getFlower();
String flower2=(String )o2.getFlower();
c=flower1.compareTo(flower2);
}
return c;
}
}
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Random;
import java.util.Scanner;
public class PlayGame {
private String[] flower = { "方塊", "梅花", "紅心", "黑桃" };
private String[] num = { "A", "2", "3", "4", "5", "6", "7", "8", "9", "10",
"J", "Q", "K" };
// 牌集合
private List<Poker> pokers;
// 玩家集合
private List<Player> players;
// 大牌集合
private List<Poker> maxcards;
private Scanner scanner;
// 初始化牌、
public PlayGame() {
pokers = new ArrayList<Poker>();
players = new ArrayList<Player>();
maxcards = new ArrayList<Poker>();
System.out.println("創(chuàng)建撲克牌");
for (int i = 0; i < flower.length; i++) {
for (int j = 0; j < num.length; j++) {
Poker poker = new Poker(flower[i], num[j]);
this.pokers.add(poker);
}
}
System.out.println("創(chuàng)建成功" + pokers);
}
// 初始化玩家
public void CreatePlayers() {
scanner = new Scanner(System.in);
this.WashCard();
for (int i = 0; i < 2; i++) {
System.out.println("請(qǐng)輸入第" + (i + 1) + "位玩家ID");
int id = 0;
try {
id = scanner.nextInt();
System.out.println("請(qǐng)輸入第" + (i + 1) + "位玩家姓名");
} catch (Exception o) {
System.out.println("請(qǐng)輸入整數(shù)型ID");
this.CreatePlayers();
}
String name = scanner.next();
players.add(new Player(id, name));
}
for (int i = 0; i < players.size(); i++) {
? ? ? ? ? ? System.out.println("----歡迎玩家:"+players.get(i));
}
}// 洗牌
public void WashCard() {
System.out.println("開始洗牌");
for (int i = 0; i < pokers.size(); i++) {
Random random = new Random();
int j = random.nextInt(pokers.size());
Poker temp = pokers.get(i);
pokers.set(i, pokers.get(j));
pokers.set(j, temp);
}
System.out.println("洗牌結(jié)束");
}
// 拿牌
public void TakeCard() {
for (int i = 0, n = 0; i < 2; i++) {
// 每人依次拿牌
for (int j = 0; j < players.size(); j++, n++) {
this.players.get(j).setPokercard(this.pokers.get(n));
System.out.println("玩家" + players.get(j) + "拿牌");
}
}
System.out.println("結(jié)束發(fā)牌");
}
// 比較大小
public void playGame(){
? ? System.out.println("開始游戲");
? ?
? ? ? for (int i = 0; i < players.size(); i++) {
? ? ? ? ? ? System.out.println("玩家:"+players.get(i)+"最大的手牌為:"+ Collections.max(this.players.get(i).getPokercard(),new PokerComparator()));
? ? ? ? ? ? maxcards.add(Collections.max(this.players.get(i).getPokercard(),new PokerComparator())); //添加各自的大牌到一個(gè)List
? ? ? ? ? }
? ? ? ??
}//比較大牌的List集合 決出 最大的一張撲克
public void playGame2(){
// ? ? 判斷大牌集合中最大牌
? ? Poker winPoker=Collections.max(maxcards, new PokerComparator());
? ? for(int i=0;i<players.size();i++){
? ? if(players.get(i).getPokercard().contains(winPoker)){
? ? System.out.println("勝出的玩家是:"+players.get(i));
? ? }
? ? }
? ? System.out.println("玩家各自的手牌是");
? ? for(int i=0;i<players.size();i++){
? ? System.out.println(players.get(i).getPokercard());
? ? }
? ? }
}
public class GaneTest {
public static void main(String[] args) {
PlayGame pg=new PlayGame();
pg.CreatePlayers();
pg.playGame();
pg.playGame2();
}
}
------------------------------------------------------------------------------------------------------------
創(chuàng)建撲克牌
創(chuàng)建成功[方塊A, 方塊2, 方塊3, 方塊4, 方塊5, 方塊6, 方塊7, 方塊8, 方塊9, 方塊10, 方塊J, 方塊Q, 方塊K, 梅花A, 梅花2, 梅花3, 梅花4, 梅花5, 梅花6, 梅花7, 梅花8, 梅花9, 梅花10, 梅花J, 梅花Q, 梅花K, 紅心A, 紅心2, 紅心3, 紅心4, 紅心5, 紅心6, 紅心7, 紅心8, 紅心9, 紅心10, 紅心J, 紅心Q, 紅心K, 黑桃A, 黑桃2, 黑桃3, 黑桃4, 黑桃5, 黑桃6, 黑桃7, 黑桃8, 黑桃9, 黑桃10, 黑桃J, 黑桃Q, 黑桃K]
開始洗牌
洗牌結(jié)束
請(qǐng)輸入第1位玩家ID
1
請(qǐng)輸入第1位玩家姓名
s
請(qǐng)輸入第2位玩家ID
2
請(qǐng)輸入第2位玩家姓名
f
----歡迎玩家:Player [name=s]
----歡迎玩家:Player [name=f]
開始游戲
Exception in thread "main" java.util.NoSuchElementException
at java.util.ArrayList$Itr.next(Unknown Source)
at java.util.Collections.max(Unknown Source)
at PlayGame.playGame(PlayGame.java:88)//上面黑體部分
at GaneTest.main(GaneTest.java:8)
求解救啊
2015-04-15
之前寒假在家寫的,代碼比較啰嗦,求批評(píng)指正
package pokergame;
import java.util.ArrayList;
import java.util.InputMismatchException;
import java.util.Iterator;
import java.util.Random;
import java.util.Scanner;
//使用int來(lái)表示撲克,點(diǎn)數(shù)為2-14,花色為100-400,如104即為方片4
class Poker{
private int color;
private int num;
private int poker;
private String colorString;
private String numString;
//設(shè)置撲克的花色和點(diǎn)數(shù)
public Poker(int color,int num) {
this.color = color;
this.num = num;
this.poker = color*100+num;
}
public Poker(){
}
//將撲克的花色與點(diǎn)數(shù)提取出來(lái)
public Poker(int pokerint){
this.num = pokerint%100;
this.color = pokerint/100;
}
public int getPoker() {
return poker;
}
//將int表示的撲克轉(zhuǎn)換為字符串
public String toStringPoker(int pokerint){
num = pokerint%100;
color = pokerint/100;
if (num == 11) {
this.numString = "J";
} else if (num == 12) {
this.numString = "Q";
}else if (num == 13) {
this.numString = "K";
}else if (num == 14) {
this.numString = "A";
}else {
this.numString = num+"";
}
switch (color) {
case 1:
this.colorString = "方片";
break;
case 2:
this.colorString = "梅花";
break;
case 3:
this.colorString = "紅桃";
break;
case 4:
this.colorString = "黑桃";
break;
}
return (colorString+numString);
}
}
//玩家類,用來(lái)表示玩家
class Player{
private int ID;
private String name;
//玩家的手牌集合,用ArrayList來(lái)表示
ArrayList<Integer> poker = new ArrayList<>();?
Poker pk = new Poker();
//用來(lái)存儲(chǔ)玩家最大的手牌
private int maxPoker;
public int getID() {
return ID;
}
public void setID(int iD) {
ID = iD;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public ArrayList<Integer> getPoker() {
return poker;
}
public void setPoker(ArrayList<Integer> poker) {
this.poker = poker;
}
//將玩家的手牌轉(zhuǎn)換為字符串并輸出,index代表玩家的第幾張手牌
public String getPokerString(int index){
return pk.toStringPoker(poker.get(index));
}
public int getMaxPoker() {
return maxPoker;
}
public void setMaxPoker(int maxPoker) {
this.maxPoker = maxPoker;
}
}
public class PlayGame {
ArrayList<Integer> poker;
//用來(lái)存放洗牌后的撲克
int poker1[];
//創(chuàng)建兩個(gè)玩家的對(duì)象
Player player1;
Player player2;
public PlayGame(){
this.poker = ?new ArrayList<>();
this.poker1 = new int[52];
this.player1 = new Player();
this.player2 = new Player();
}
//創(chuàng)建一副撲克,將其放在ArrayList集合中
public void makePoker(){
for (int i = 1; i <= 4; i++) {
for (int j = 2; j <= 14; j++) {
poker.add(new Poker(i,j).getPoker());
}
}
}
//將創(chuàng)建好的撲克輸出到屏幕上
public void getPoker(){
Poker pk = new Poker();
System.out.print("為:[");
for (Iterator<Integer> iterator = poker.iterator(); iterator.hasNext();) {
Integer integer = (Integer) iterator.next();
System.out.print(pk.toStringPoker(integer)+" ");
}
System.out.println("]");
}
//用來(lái)將排序后的ArrayList的撲克打亂順序并放在poker1數(shù)組中
public void shuffle(){
//將ArrayList的撲克先全部復(fù)制到poker1數(shù)組中
for (int i = 0; i < poker1.length; i++) {
poker1[i] = poker.get(i);
}
//打亂poker1中撲克
Random rd = new Random();
for (int i = 0; i < 52; i++) {
int rdnum = rd.nextInt(52);
poker1[i] = poker1[i] + poker1[rdnum];
poker1[rdnum] = poker1[i] - poker1[rdnum];
poker1[i] = poker1[i] - poker1[rdnum];
}
}
//用來(lái)創(chuàng)建玩家的方法
public void makePlayer(Player player){
int ID;
System.out.print("輸入ID:");
@SuppressWarnings("resource")
Scanner scanner = new Scanner(System.in);
while (true) {
try {
if (scanner.hasNext()) {
ID = scanner.nextInt();
player.setID(ID);
}
break;
} catch (InputMismatchException e) {
scanner.next();
System.out.println("ID應(yīng)該為整數(shù)");
}
}
System.out.print("輸入姓名:");
if (scanner.hasNext()) {
player.setName(scanner.next());
}
}
//找出一個(gè)玩家手中最大的牌
public String comparPoker(Player player){
if (player.poker.get(0)%100 > player.poker.get(1)%100) {
player.setMaxPoker(player.poker.get(0));
return player.pk.toStringPoker(player.poker.get(0));
}else if (player.poker.get(0)%100 < player.poker.get(1)%100) {
player.setMaxPoker(player.poker.get(1));
return player.pk.toStringPoker(player.poker.get(1));
}else if (player.poker.get(0)/100 > player.poker.get(1)/100) {
player.setMaxPoker(player.poker.get(0));
return player.pk.toStringPoker(player.poker.get(0));
}else if (player.poker.get(0)/100 < player.poker.get(1)/100) {
player.setMaxPoker(player.poker.get(1));
return player.pk.toStringPoker(player.poker.get(1));
}else {
player.setMaxPoker(player.poker.get(0));
return player.pk.toStringPoker(player.poker.get(0));
}
}
//將兩個(gè)玩家手中最大的牌做比較,找出其中的贏家
public String comparPoker(Player player1,Player player2){
if (player1.getMaxPoker()%100 > player2.getMaxPoker()%100) {
return player1.getName();
}else if (player1.getMaxPoker()%100 < player2.getMaxPoker()%100) {
return player2.getName();
}else if (player1.getMaxPoker()/100 > player2.getMaxPoker()/100) {
return player1.getName();
}else if (player1.getMaxPoker()/100 < player2.getMaxPoker()/100) {
return player2.getName();
}else {
return "平手";
}
}
public static void main(String[] args) {
PlayGame pg = new PlayGame();
System.out.println("----------創(chuàng)建一副撲克牌----------");
pg.makePoker();?
System.out.println("----------撲克牌創(chuàng)建成功---------");
pg.getPoker();
System.out.println("--------開始洗牌---------");
pg.shuffle();
System.out.println("--------洗牌結(jié)束---------");
System.out.println("--------創(chuàng)建玩家---------");
System.out.println("請(qǐng)輸入第一位玩家的ID和姓名:");
pg.makePlayer(pg.player1);
System.out.println("請(qǐng)輸入第二位玩家的ID和姓名:");
pg.makePlayer(pg.player2);
System.out.println("\n歡迎玩家"+pg.player1.getName());
System.out.println("歡迎玩家"+pg.player2.getName());
System.out.println("\n--------開始發(fā)牌---------");
pg.player1.poker.add(pg.poker1[0]);
System.out.println("玩家"+pg.player1.getName()+"拿牌");
pg.player2.poker.add(pg.poker1[1]);
System.out.println("玩家"+pg.player2.getName()+"拿牌");
pg.player1.poker.add(pg.poker1[2]);
System.out.println("玩家"+pg.player1.getName()+"拿牌");
pg.player2.poker.add(pg.poker1[3]);
System.out.println("玩家"+pg.player2.getName()+"拿牌");
System.out.println("--------發(fā)牌結(jié)束----------");
System.out.println("--------開始游戲----------");
System.out.println("玩家"+pg.player1.getName()+"的最大的手牌為"+pg.comparPoker(pg.player1));
System.out.println("玩家"+pg.player2.getName()+"的最大的手牌為"+pg.comparPoker(pg.player2));
String resultString = pg.comparPoker(pg.player1, pg.player2);
if (resultString != "平手") {
System.out.println("----------玩家"+resultString+"獲勝----------");
}else {
System.out.println("------------平手-------------");
}
System.out.println("玩家各自的手牌為:");
System.out.println(pg.player1.getName()+"["+pg.player1.pk.toStringPoker(pg.player1.poker.get(0))+","+pg.player1.pk.toStringPoker(pg.player1.poker.get(1))+"]");
System.out.println(pg.player2.getName()+"["+pg.player2.pk.toStringPoker(pg.player2.poker.get(0))+","+pg.player2.pk.toStringPoker(pg.player2.poker.get(1))+"]");
}
}
2015-01-25
我覺得不用String,用int來(lái)存儲(chǔ)撲克牌比較好處理