跟王老师学枚举(三):枚举类API

跟王老师学枚举(三):枚举API

主讲教师:王少华   QQ群号:483773664


一、枚举类API

Java中声明的枚举类,均是java.lang.Enum类的孩子,它继承了Enum类的所有方法。常用方法:

name():返回此枚举常量的名称

ordinal():返回枚举常量的序数(它在枚举声明中的位置,其中初始常量序数为零

valueof(Class enumClass, String name):返回带指定名称的指定枚举类型的枚举常量

valueof(String name):返回带指定名称的当前枚举类型

values() 此方法虽然在JDK文档中查找不到,但每个枚举类都具有该方法,它遍历枚举类的所有枚举值

wKioL1dYEkmQWrmFAAA2A_9itvI538.png

二、枚举类API实例

public class EnumTest {
    public static void main(String[] args) {
        //返回枚举类型的名称
        System.out.println(Grade.A.name());
        //返回枚举类型的下标
        System.out.println(Grade.A.ordinal());
        //通过字符串获得枚举对象
        String value="D";
        //一、获得当前的枚举
        Grade grade = Grade.valueOf(value);
        System.out.println(grade.name()+grade.getValue()+grade.getLocString());
        //二、通过父类
        Grade grade2 = Enum.valueOf(Grade.class, value);
        System.out.println(grade2.name()+grade2.getValue()+grade2.getLocString());
         
        //获得所有的实例对象
        Grade[] grades = Grade.values();
        for (Grade g : grades) {
            System.out.println(g.getLocString()+"----");
        }
        //通过下标获得对象
        int index = 2;
        Grade[] grades2 = Grade.values();
        Grade grade3 = grades2[index];
        System.out.println(index+"----"+grade3.name());
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章