我正在制作一个扑克应用程序。然而,我坚持评估高牌。(我知道怎么拿到大牌,但是如果2/3玩家的大牌是一样的呢?)
我的清单是有序的,所以这不是问题。问题是我不知道将 5 张手牌与其他玩家的手牌进行比较的好方法。
是的,卡片是按rankComparator班级排序的。
我有一个简单的Player类,其中包含一组卡片(他的手):
public class Player {
private List<Card> cards;
private int valueWaarde;
private String valueAsString;
private String name;
private HandEval1 h1;
public String getValueAsString() {
return valueAsString;
}
public Integer getValueWaarde() {
return valueWaarde;
}
public List<Card> getCards() {
return cards;
}
public Player(String name){
this.name = name;
}
public Player() {
}
public void addCard(Card c) {
if (cards == null) {
this.cards = new ArrayList<>();
}
this.cards.add(c);
}
public void clearCards() {
if (cards != null) {
cards.clear();
}
}
public Map<String, Integer> valueOfHand(List<Card> cards, List<Card> cardsBoard) {
h1 = new HandEval1(cards, cardsBoard);
Map<String, Integer> map = h1.evaluateHand();
for (Map.Entry<String, Integer> entry : map.entrySet()) {
this.valueWaarde = entry.getValue();
this.valueAsString = entry.getKey();
}
return map;
}
@Override
public String toString() {
return name;
}
}
我有一个简单的卡片类,如下所示:
public class Card {
private final int suitValue;
private Rank rank;
private Suit suit;
private int value;
public int getSuitValue() {
return suitValue;
}
public int getValue() {
return value;
}
public Rank getRank() {
return rank;
}
public Suit getSuit() {
return suit;
}
public enum Suit {
h(1), c(2), d(3), s(4);
final int value;
Suit(int value) {
this.value = value;
}
}
慕神8447489
慕尼黑8549860
相关分类