我必须编写一个名为handScore的方法,该方法将一组牌作为参数,并将总分加起来(并返回)。卡片的等级应该按照我写的编码,但我不确定如何对它们进行合法编码。
public class Cards {
int suit, rank;
public Cards () {
this.suit = 0; this.rank = 0; }
public Cards (int suit, int rank) {
this.suit = suit; this.rank = rank;
}
public static void main(String[] args) {
}
public static void printCard (Cards c) {
String[] suits = { "Clubs", "Diamonds", "Hearts", "Spades" };
String[] ranks = { "narf", "Ace", "2", "3", "4", "5", "6",
"7", "8", "9", "10", "Jack", "Queen", "King" };
System.out.println (ranks[c.rank] + " of " + suits[c.suit]); }
public static void printDeck (Cards[] deck) { for (int i=0; i<deck.length; i++) {
printCard (deck[i]);
}
}
/**
*
* @param c
*/
public static void buildDeck(Cards c) {
int index = 0;
for (int suit = 0; suit <= 3; suit++) {
for (int rank = 1; rank <= 13; rank++) {
Cards[] deck = null;
deck[index] = new Cards (suit, rank); index++; } }
}
public static void handScore(Cards[] hand) {
spades = 3;
hearts = 2;
diamonds = 1;
clubs = 0;
ace = 1;
jack = 11;
queen = 12;
king = 13;
}
答案 0 :(得分:0)
当你说“卡片的行列应该像我写的那样编码,但我不确定如何合法编码它们”时,你有点不清楚。另外,不同的纸牌游戏可以对同一张卡具有不同的值。但我会根据我的想法提出一两个建议。
一种选择是使用getScore()方法创建Card类。如果这不是一个选项,您可能需要考虑一个类中的方法,该方法根据等级返回每张卡的分数(如果相关,则为套装返回)。所以
public void getScore("Queen") {
...
}
将返回12或任何女王的等级。您可能希望使用数组来存储每张卡的分数。如果这是家庭作业,我不会发布更多代码,但我希望这有帮助。