首页 > IT职业 > IT生活 > Java集合框架下简易扑克牌游戏
package imooc_collection_map_colletionscomparable;
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
Game mg=new Game();
mg.getCard();//初始化牌,创造一副牌
mg.washCard();//洗牌
mg.playGame();//创建玩家并发牌,并游戏
} }
package imooc_collection_map_colletionscomparable;
import java.util.ArrayList;
import java.util.List;
public class Player {
//玩家拥有ID,姓名,手牌
private String id;
private String name;
private List
//构造方法
Player(String id,String name){// 在构造方法里不含返回值的概念是不同于 “void” 的,在定义构造方法时加了 “void” ,结果这个方法就创建不了对象。
this.id=id;
this.name=name;
this.cards=new ArrayList();
}
//重写toString方法
public String toString(){
return "name:"+name;
}
//建立属性访问器和属性更改器
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public List getCards() {
return cards;
}
public void setCards(List cards) {
this.cards = cards;
} }
package imooc_collection_map_colletionscomparable;
public class Card implements Comparable
private String color;//扑克牌花色
private String count;//扑克牌点数
//构造方法
Card(String color,String count){
this.color=color;
this.count=count;
}
//重写toString方法
public String toString(){
return color+count;
}
//规定花色顺序,得到花色位置
public int getColorPoint(){
String[] colors={"黑桃","红桃","梅花","方块"};
for(int i=0;i }
package imooc_collection_map_colletionscomparable;
import java.util.ArrayList;
import java.util.Collections;
import java.util.InputMismatchException;
import java.util.List;
import java.util.Random;
import java.util.Scanner;
public class Game {
private List
private List
//构造方法
public Game(){//初始化属性
players=new ArrayList();
cards=new ArrayList();
}
//初始化牌,顺序存放牌
public void getCard(){
String[] colors={"黑桃","红桃","梅花","方块"};
String[] counts={"2","3","4","5","6","7","8","9","10","J","Q","K","A"};
for(int i=0;i0?players.get(0).getName():players.get(1).getName();
System.out.println("玩家:"+winPlayer+"获得胜利!");
System.out.println("玩家:"+players.get(0).getName()+"的手牌为:"+players.get(0).getCards().get(0)+" "
+players.get(0).getCards().get(1));
System.out.println("玩家:"+players.get(1).getName()+"的手牌为:"+players.get(1).getCards().get(0)+" "
+players.get(1).getCards().get(1));
}
//建立属性访问器和更改器
public List getPlayers() {
return players;
}
public void setPlayers(List players) {
this.players = players;
}
public List getCards() {
return cards;
}
public void setCards(List cards) {
this.cards = cards;
} }
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/4358/viewspace-2798927/ ,如需转载,请注明出处,否则将追究法律责任。