java - 从另一个类访问枚举

标签 java enums

我是 Java 的新手,我正在努力让我的 Enumeration 工作。我在 BlueJ 工作,我有 2 个类(class)(试图制作纸牌游戏)。我的第一个类叫做 Card,在这个类中我有一个名为 Suit 的枚举。我的另一个类(class)是 Deck,我正试图从这个类(class)中调用枚举。我的问题出在甲板的 for 循环中,我已经在其中声明了 Suit suit。它不识别类 Suit。

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

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;
}
}

最佳答案

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

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

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

关于java - 从另一个类访问枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14792357/

相关文章:

java - 在 hibernate 中映射 PostgreSQL LTREE 列时出错

c# - 如何将字符串转换为枚举

java - 使用 Kafka Consumer 进行消息消费 - Java

java - 查询未在 HSQLDB 中运行

ios - 方法是否可能(或建议)识别其调用方?

c++ - 编译时检查字符串到枚举映射是否完整

swift - 如何在以下情况下 swift 使用枚举?

java - 为什么枚举序数不是常量表达式?

java - 读取RequestMapping注解值

java - 操作系统时区更改后jvm默认时区更新