学习java过程之枚举(二)

学习java过程之枚举(二),第1张

学习java过程之枚举(二)

关于Enum类的方法

(1)toString:如果子枚举类没有重写toString,就返回枚举对象名。如果有子枚举类toString有重写,就看子类的toString方法是输出什么内容,一般是枚举对象的属性。

调用方式:直接输出对象。

        Season3 spring = Season3.SPRING;
        System.out.println(spring);

(2)name方法:返回枚举对象名

        定义方式:枚举对象名.name();

       System.out.println(spring.name());

(3)value方法:返回枚举类所有对象的数组。要用枚举类数组来接收。这里引出增强for循环。

        定义方式:枚举类.value.

        Season3[] arr = Season3.values();
        //引出新的知识点:增强for循环
        for(Season3 season : arr){//就是将arr这个数组的元素一一取出来,赋给season,如果取完就会自动退出。
            System.out.println(season);//输出的是对象,会自动调用toString
        }

(4)valueof()方法:用字符串查找枚举类中是否有这个对象名,如果有就返回,没有就报错。

使用方式:枚举类 suibian = 枚举类.valueof("字符串");

        //第五个valueof方法,用字符串来查找枚举类中是否有跟这个同名的枚举对象,如果有就返回
        Season3 autumn = Season3.valueOf("AUTUMN");//既然返回的是对象就要接收一下。

(5)ordinal()方法:查找是枚举对象在整个枚举类数组的位置。

使用方式:对象名.ordinal();

       //第三个ordinal,该枚举对象在整体个枚举对象中的序号,序号是从0开始的。
        System.out.println(spring.ordinal());

(6)compareTo()方法:两个对象的ordinal()相减,前者减后者。

        //第六个compareTo方法,比较两者的次序之前,前者减后者。
        System.out.println(Season3.SPRING.compareTo(Season3.WINTER));

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5678412.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存