Enum是所有 Java 语言枚举类型的公共基本类(注意Enum是抽象类);它的常见方法有哪些?
时间: 2024-06-04 11:11:30 浏览: 108
Enum类中常见的方法有:values()、valueOf(String name)、name()、ordinal()。values()方法返回枚举类型的所有常量,valueOf(String name)方法根据给定的字符串返回对应的枚举常量,name()方法返回枚举常量名称,ordinal()方法返回枚举常量的序号。
相关问题
java新建城市枚举, 测试枚举的抽象方法
在Java中,可以使用枚举(enum)来定义一组常量。枚举类型是一种特殊的类,它限制了实例的数量,并且每个实例都是唯一的。如果你想创建一个表示城市的枚举,可以按照以下方式进行:
```java
public enum City {
BEIJING("Beijing", "China"),
NEW_YORK("New York", "United States"),
LONDON("London", "United Kingdom");
private final String name;
private final String country;
City(String name, String country) {
this.name = name;
this.country = country;
}
public String getName() {
return name;
}
public String getCountry() {
return country;
}
}
```
在上面的代码中,我们定义了一个名为`City`的枚举类型,并列出了三个城市:北京、纽约和伦敦。每个城市都有一个名称和所属的国家。通过在枚举常量后面添加括号,可以为每个常量提供相应的属性值。
要测试枚举的抽象方法,你可以在枚举类型中定义一个抽象方法,并在每个枚举常量中实现该方法。例如,我们可以在`City`枚举中添加一个抽象方法`getPopulation()`来获取城市的人口数量:
```java
public enum City {
// 枚举常量...
public abstract int getPopulation();
}
```
然后,在每个枚举常量中实现`getPopulation()`方法:
```java
public enum City {
BEIJING("Beijing", "China") {
@Override
public int getPopulation() {
return 21540000;
}
},
// 其他枚举常量...
// 枚举常量后面的实现抽象方法...
}
```
通过这种方式,每个枚举常量都可以根据自己的特定情况提供不同的实现。
java枚举类有几种写法,举例说明
Java枚举类有两种写法:一种是普通枚举类,另一种是枚举类中定义抽象方法。
普通枚举类的写法如下所示:
```
public enum Weekday {
MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY
}
```
在这个例子中,Weekday是一个枚举类型,它包含了七个枚举常量。这些常量都是Weekday类型的对象,可以通过Weekday.MONDAY、Weekday.TUESDAY等来访问。
枚举类中定义抽象方法的写法如下所示:
```
public enum Operation {
PLUS {
public double apply(double x, double y) { return x + y; }
},
MINUS {
public double apply(double x, double y) { return x - y; }
},
TIMES {
public double apply(double x, double y) { return x * y; }
},
DIVIDE {
public double apply(double x, double y) { return x / y; }
};
public abstract double apply(double x, double y);
}
```
在这个例子中,Operation是一个枚举类型,它包含了四个枚举常量,每个常量都是Operation类型的对象,并且都有一个apply方法。这些常量可以通过Operation.PLUS、Operation.MINUS等来访问。