如何在 Java 中使用带有构造函数的枚举类型?\n
枚举类型可以使用私有构造函数,该构造函数可用于初始化实例字段。
EnumDemo 类演示了这一点。它具有一个 Food 枚举类型,该类型有四个常量:HAMBURGER、FRIES、HOTDOG 和 ARTICHOKE。请注意,每个常量值后面都括在括号内。这将调用该成员的构造函数来初始化该成员的价格字段。
我们在 main() 方法中的 for 循环中迭代 Food 值。在此方法中,我们首先显示食物常量的名称。接下来,我们检查该食物的价格,并显示价格是昂贵还是实惠。随后,为了好玩,我们演示了如何将 switch 语句与 Food 枚举类型一起使用。
示例
public class EnumDemo {
public enum Food {
HAMBURGER(7), FRIES(2), HOTDOG(3), ARTICHOKE(4);
Food(int price) {this.price = price;}
private final int price;
public int getPrice() {
return price;
}
}
public static void main(String[] args) {
for (Food f : Food.values()) {
System.out.print("Food: " + f + ", ");
if (f.getPrice() >= 4) {
System.out.print("Expensive, ");
} else {
System.out.print("Affordable, ");
}
switch (f) {
case HAMBURGER:
System.out.println("Tasty");
continue;
case ARTICHOKE:
System.out.println("Delicious");
continue;
default:
System.out.println("OK");
}
}
}
}输出
Food: HAMBURGER, Expensive, Tasty Food: FRIES, Affordable, OK Food: HOTDOG, Affordable, OK Food: ARTICHOKE, Expensive, Delicious
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP