JAVA枚举类简介说明
下文笔者讲述Java枚举类简介说明,如下所示
例
使用枚举类来表示HTTP请求的结果
Java枚举类简介
枚举变量:
指的是变量的取值只在一个有限的集合内
如:
性别、星期几、颜色等。从JDK5开始,JAVA支持了枚举类型。
使用enum关键字声明枚举类型
枚举类可以理解为一个集合
enum内部有多少个值,就有多少个实例对象。
枚举类不能直接new
而是由JVM加载枚举类的时候自动创建枚举类内部的示例
枚举内部的每个实例都是全局唯一的
枚举类构造方法只能为private
枚举类示例
public enum Size {
SMALL,MEDIUM,LARGE,EXTRA_LARGE
}
测试
public class test {
public static void main(String[] args) {
Size s1=Size.SMALL;
Size s2=Size.SMALL;
Size s3=Size.LARGE;
System.out.println(s1==s2);
System.out.println(s1==s3);
}
}
枚举类常用API
所有enum类型都是Enum的子类
继承Enum的方法
具有以下API:
| ordinal | 返回枚举值所在的索引位置,从0开始 |
| compareTo | 比较两个枚举值的索引位置大小 返回自己的索引比被比较者大多少 |
| toString | 返回枚举值的字符串表示 |
| valueOf | 将字符串初始化为枚举对象 |
| values | 返回所有的枚举值 |
2.2.1.ordinal
public static void main(String[] args) {
System.out.println(Size.SMALL.ordinal());
System.out.println(Size.MEDIUM.ordinal());
System.out.println(Size.LARGE.ordinal());
System.out.println(Size.EXTRA_LARGE .ordinal());
}
}
2.2.2.compareTo
public static void main(String[] args) {
System.out.println(Size.SMALL.compareTo(Size.MEDIUM));
}
2.2.3.toString
public static void main(String[] args) {
System.out.println(Size.SMALL.toString().equals("SMALL"));
}
2.2.4.valueOf
valueOf存在方法重载:
public static void main(String[] args) {
System.out.println(Size.valueOf("SMALL")==Size.SMALL);
System.out.println(Enum.valueOf(Size.class,"SMALL")==Size.SMALL);
}
2.2.5.values
public static void main(String[] args) {
for (Size value : Size.values()) {
System.out.println(value);
}
}
成员变量和带参构造
如:使用枚举类来表示HTTP请求的结果
public enum HttpResult {
//注意:成员实例只能写在开头,这是强制规定,否则会报错
SUCCESS(200),FAIL(500);
private int code;
private HttpResult(int code){
this.code=code;
}
public int getCode() {
return code;
}
}
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


