java中的枚举类enum
程序员文章站
2022-06-16 13:47:15
...
1.定义枚举类
使用enum关键字定义枚举类
- 定义的枚举类的对象必须写在开头,用“,”分隔,最后使用“;”
- 需要提供相应的构造器
定义的enum默认继承与java.lang.Enum类
2.enum类中常用的三种方法
- 类名.values() :返回枚举类对象的数组,该方法可以很方便的遍历所有的枚举值,返回类类型的数组
- 类名.valueOf(String str) :可以把一个str转换成对应的枚举类对象,要求str必须是枚举类对象的“名字”。
否则会有运行异常(IIIegalArgumentException),所以通常与try-catch连用,返回值为类类型 - 对象.toString() :返回当前枚举类对象常量的名称
代码:
import java.util.Arrays;
import java.util.MissingFormatArgumentException;
/**
* @Description 枚举类的定义与使用以及枚举类中常用的三个方法values()、
* valueOf(String str)、toString()
* @author HuXuehao Email:[email protected]
* @version
* @date 2020年 下午4:04:41
*/
//枚举的创建
enum Number{
// 枚举的规范是:
// 1.先把的对象写在前面,只写对象名和"()"
// 2.括号中对应的是构造构造方法的参数
// 3.对象和对象之间使用 “,” 隔开。
// 4.如果没有有参构造函数,那么在1中的"()"中参数就会报错
ONE("第一天"),
TWO("第二天"),
THREE("第三天"),
FOUR("第四天");
// 类的属性
private final String day;
// 私有的构造方法
private Number(String s) {
day=s;
}
// get方法
public String getDay() {
return day;
}
}
public class Enumaaaa {
public static void main(String[] args) {
//枚举的使用
System.out.println(Number.ONE.getDay());
System.out.println(Number.TWO.getDay());
System.out.println(Number.THREE.getDay());
System.out.println(Number.FOUR.getDay());
System.out.println("-----------------------------");
// 三个方法
// 第一个方法 obj[] values(): 获取所有的内置对象名
System.out.println(Arrays.toString(Number.values()));
// 第二个方法 num valueOf(String str):通过对对象名来获取对象
Number valueOf = Number.valueOf("FOUR");
System.out.println(valueOf.getDay());
// 第三个方法 String toString():打印当前对象的对象名
System.out.println(Number.ONE.toString());
}
}
结果:
下一篇: python中的元类