所以我有一个实验室(我们被允许寻求外部帮助,所以我在这里经过了很多挠头)我们必须在其中实施一副纸牌。我们必须使用 enum 类来创建 num
对于西装:
public enum Suits {
CLUBS, HEARTS, DIAMONDS, SPADES
}
对于数字:
public enum Numerals {
DEUCE(2), THREE(3), FOUR(4), FIVE(5), SIX(6), SEVEN(7), EIGHT(8), NINE(9),
TEN(10), JACK(11), QUEEN(12), KING(13), ACE(14);
}
我的卡片类非常简单,但我不确定这两个代码块:
public int compareTo (Card aCard){
if (aCard.aNumeral.equals(this.aNumeral) && aCard.aSuit.equals(this.aSuit)){
return 0;
}
else {
return -1;
}
}
和
public boolean equals (Card aCard){
if (this.compareTo(aCard) == 0){
return true;
}
else {
return false;
}
}
现在是棘手的部分......甲板......
所以我们必须使用 Cloneable、Iterable 和 Comparator 来实现这个卡组,所以这就是我到目前为止所拥有的,只是不知道要做什么。
import java.util.ArrayList;
import java.util.Comparator;
import java.util.Iterator;
public class Deck implements Cloneable, Iterable<Card>, Comparator<Card> {
private ArrayList<Card> cards;
public Deck (){
for (Card c : cards){
}
}
我什至很难将构造函数放在一起。我打算使用 ArrayList 来“保存” 52 张已排序的卡片(如您所见);但我们最终必须返回一个排序好的牌组。关于去哪里的任何建议?