11

我是 Java 新手,我正在努力让我的枚举工作。我在 BlueJ 工作,我有 2 节课(试图建立一个纸牌游戏)。我的第一堂课叫做 Card 并且在这个类里面我有一个叫做 Suit 的枚举。我的另一个班级是 Deck,我正在尝试从这个班级调用枚举。我的问题是在我声明西装套装的甲板的 for 循环中。它不识别类套装。

我的代码在下面,如果有人能告诉我我做错了什么......将不胜感激。谢谢!

public class Deck
{

private Bag<Card> cardBag = new Bag<Card>();

public Deck()
{
  for(Suit suit : Suit.values())
     {
         Card card= new Card (suit, 5);
     }
 }

//

public class Card
{
public enum Suit
{
    H, S, C, D
}

private Suit suit;
private int valueOfCard;

public static final int ACE = 1;
public static final int JACK = 11;
public static final int QUEEN = 12;
public static final int KING = 13;

public Card(int valueOfCard, Suit suit)
{
    this.valueOfCard= valueOfCard;
    this.suit=suit;
}
}
4

1 回答 1

35

这里至少有两种可能的解决方案:

  1. Suit枚举放在它自己的文件中。

  2. Suit在其他类中使用其完全限定名称进行访问。那是使用Card.Suit,而不是仅仅Suit

于 2013-02-09T22:34:04.533 回答