Java EnumSet 语法帮助
Java EnumSet Syntax Assistance
我刚刚开始学习 Java,我正在研究一个与一副纸牌配合使用的简单应用程序。目前,我正在尝试用枚举实例化 Suit class。我想使用 EnumSet 功能,但我真的无法理解这里发生的事情。
我已经查看了几个示例,我相信我只是没有完全理解语法。
这是我目前所拥有的。我最终想要得到的是一个 EnumSet,其中包含每张 Suit
纸牌(梅花、方块、红心、黑桃)的值。
public class Suits {
public enum Suit {
CLUBS("Clubs"),
DIAMONDS("Diamonds"),
HEARTS("Hearts"),
SPADES("Spades");
private String displayText;
Suit(String displayText) {
this.displayText = displayText;
}
public String getDisplayText() {
return this.displayText;
}
}
final EnumSet<Suit> allSuits = EnumSet.allof(Suit.values());
}
我知道 final EnumSet
上的语法是错误的。我只是不确定我到底做错了什么。感谢任何帮助。
您应该传递 Class<Suit>
实例而不是 Suit[]
:
final EnumSet<Suit> allSuits = EnumSet.allOf(Suit.class);
我刚刚开始学习 Java,我正在研究一个与一副纸牌配合使用的简单应用程序。目前,我正在尝试用枚举实例化 Suit class。我想使用 EnumSet 功能,但我真的无法理解这里发生的事情。
我已经查看了几个示例,我相信我只是没有完全理解语法。
这是我目前所拥有的。我最终想要得到的是一个 EnumSet,其中包含每张 Suit
纸牌(梅花、方块、红心、黑桃)的值。
public class Suits {
public enum Suit {
CLUBS("Clubs"),
DIAMONDS("Diamonds"),
HEARTS("Hearts"),
SPADES("Spades");
private String displayText;
Suit(String displayText) {
this.displayText = displayText;
}
public String getDisplayText() {
return this.displayText;
}
}
final EnumSet<Suit> allSuits = EnumSet.allof(Suit.values());
}
我知道 final EnumSet
上的语法是错误的。我只是不确定我到底做错了什么。感谢任何帮助。
您应该传递 Class<Suit>
实例而不是 Suit[]
:
final EnumSet<Suit> allSuits = EnumSet.allOf(Suit.class);