栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

enum类型如何使用(enum怎么用)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

enum类型如何使用(enum怎么用)

使用Season2 枚举类来演示:

Season2 枚举类

enum Season2{

    SPRING("春天","温暖"),
    WINTER("冬天","寒冷"),
    AUTUMN("秋天","凉爽");

    private String name;
    private String desc;//描述

    private Season2(String name, String desc) {
        this.name = name;
        this.desc = desc;
    }
}

方法一: name

        Season2 autumn = Season2.AUTUMN;
        // 输出枚举对象的名字
        System.out.println(autumn.name());


结果: AUTUMN

方法二: ordinal

        // ordinal() 输出的是该枚举对象的次序/编号,从0开始
        // AUTUMN 枚举对象是第三个,因此输出 2
        System.out.println(autumn.ordinal());

返回结果: 2

方法三: values

        // 反编译可以看出values 方法,返回 Season2[]
        // 含定义的所有的枚举对象
        Season2[] values = Season2.values();
        for (Season2 value : values) {  //增强for循环
            System.out.println(value);
        }

返回结果 
Season{name='春天', desc='温暖'}
Season{name='冬天', desc='寒冷'}
Season{name='秋天', desc='凉爽'}

方法四: valueOf

        // valueOf :将字符串转换为枚举对象,要求字符串必须为已有的常量名,否则报异常
        // 执行流程
        // 1、根据你输入的 ”AUTUMN“ 到 Season2 的枚举对象中去寻找。
        // 2、如果找到了, 就返回,如果没有找到,就报错。
        Season2 season1 = Season2.valueOf("AUTUMN");
        System.out.println("season1 = " + season1);
        System.out.println(autumn == season1);

输出结果
season1 = Season{name='秋天', desc='凉爽'}
true

方法五: compareOf

     // compareOf 比较两个枚举常量,比较的就是编号
     // 1、就是把 Season.AUTUMN 的枚举对象编号 和 Season.SPRING 的枚举对象编号比较
     // 2、看看结果
     
    // 等于0 , 代表编号相等, 大于0, 代表前面的编号大于后面, 小于0,代表后面的编号大于前面的编号
        System.out.println(Season2.SPRING.compareTo(Season2.AUTUMN));

输出结果 -2

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/773216.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号