目录
1.表示一张牌
//通过一个类,表示一张牌
class Card {
public String suit;//花色
public String value;//牌值
public Card(String suit, String value) {
this.suit = suit;
this.value = value;
}
//弄一个toString方法,方便打印
@Override
public String toString() {
return "("+suit+value+")";
}
}
2.生成一副牌
//通过createDeck方法,创建一副牌(不含大小王),用ArrayList存储
public ArrayList<Card> createDeck() {
ArrayList<Card> deck = new ArrayList<Card>();
//创建花色
String[] suits = {"♠", "♥", "♦", "♣"};
//创建牌值
String[] values = {"A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K"};
//创建牌
for (String suit : suits) {
for (String value : values) {
deck.add(new Card(suit, value));
}
}
return deck;
}
3.洗牌
//洗牌
//标准库有一个现成的方法,shuffle,可以直接用,打乱ArrayList中的顺序
Collections.shuffle(deck);
4.整体代码展现
import java.util.ArrayList;
import java.util.Collections;
public class Poker {
//通过一个类,表示一张牌
class Card {
public String suit;//花色
public String value;//牌值
public Card(String suit, String value) {
this.suit = suit;
this.value = value;
}
//弄一个toString方法,方便打印
@Override
public String toString() {
return "("+suit+value+")";
}
}
//通过createDeck方法,创建一副牌(不含大小王),用ArrayList存储
public ArrayList<Card> createDeck() {
ArrayList<Card> deck = new ArrayList<Card>();
//创建花色
String[] suits = {"♠", "♥", "♦", "♣"};
//创建牌值
String[] values = {"A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K"};
//创建牌
for (String suit : suits) {
for (String value : values) {
deck.add(new Card(suit, value));
}
}
return deck;
}
public static void main(String[] args) {
//通过createDeck方法,创建一副牌
ArrayList<Card> deck = new Poker().createDeck();
//打印这副牌
System.out.println(deck);
//洗牌
//标准库有一个现成的方法,shuffle,可以直接用,打乱ArrayList中的顺序
Collections.shuffle(deck);
//打印洗牌后的牌
System.out.println(deck);
}
}