所以這是我的主類:它創建了一個CradStack對象,並使用mixCards方法,您將在下一堂課塊見。二十一點紙牌遊戲:我可以創建堆棧,但不能訪問他們
package BlackJack;
public class BlackJack {
public static void main(String[] args) {
CardStack cs = new CardStack();
cs.mixCards();
//cs.pop();
}
public BlackJack() {
}
public void calculateHand() {
}
public void compareHands() {
}
}
這是CardStack類:它擴展堆棧和直到現在只有填充與312卡(6decks A 13 A型4個套房堆棧的方法混合卡和比用Collections.shuffle方法混合它。 這應該工作
package BlackJack;
import java.util.Collections;
import java.util.Stack;
public class CardStack extends Stack {
public CardStack() {
}
public void mixCards() {
Stack st = new Stack();
for (int i = 0; i < 6; i++) {
for (int k = 0; k < 13; k++) {
for (int l = 0; l < 4; l++) {
Card cd = new Card();
cd.setValue(k);
cd.setColor(l);
st.push(cd);
}
}
}
Collections.shuffle(st);
}
}
這是卡類:我將在以後執行套件/顏色作爲枚舉上
package BlackJack;
public class Card {
private int value;
private String color;
//enum Suit { HEARTS, DIAMONDS, CLUBS, SPADES };
public void setValue(int value) {
this.value = value;
}
public void setColor(int l) {
if (l == 0) {
this.color="Hearts";
}
if (l == 1) {
this.color="Clubs";
}
if (l == 2) {
this.color="Diamonds";
}
if (l == 3) {
this.color="Spades";
}
}
public int getValue() {
return value;
}
public String getColor() {
return color;
}
}
可有人EXPL ain爲什麼我在使用cs.pop時會發生EmptyStackException?
因爲你試圖從一個空的堆棧彈出一些東西 – redFIVE