Java枚举与Switch

简介: Java枚举与Switch
/**
 * @Author Tiam
 * @Date 2021/12/27 18:00
 * @Description: 枚举类的使用
 */
public enum Enum_ {
    //注意分割符,最后一个以分号结尾.
    MONDAY("星期一"),
    TUESDAY("星期二"),
    WEDNESDAY("星期三"),
    THURSDAY("星期四"),
    FRIDAY("星期五"),
    SATURDAY("星期六"),
    SUNDAY("星期日");
    /**
     * 星期
     */
    private String week;

    /**
     * 构造器
     * @param week
     */
    Enum_(String week) {
        this.week = week;
    }

    /**
     * get,set方法
     * @return
     */
    public String getWeek() {
        return week;
    }

    public void setWeek(String week) {
        this.week = week;
    }
}
/**
 * @Author Tiam
 * @Date 2021/12/27 20:17
 * @Description: 枚举与switch语句的配合使用
 */

public class Burrito {
    Enum_ em;

    Burrito() {
    }

    public Burrito(Enum_ em) {
        this.em = em;
    }

    /**
     * 枚举与switch语句的配合使用
     * @return
     */
    String describe() {
        switch (em) {
            case MONDAY:
                return Enum_.MONDAY.getWeek();
            case TUESDAY:
                return Enum_.TUESDAY.getWeek();
            case WEDNESDAY:
                return Enum_.WEDNESDAY.getWeek();
            case THURSDAY:
                return Enum_.THURSDAY.getWeek();
            case FRIDAY:
                return Enum_.FRIDAY.getWeek();
            case SATURDAY:
                return Enum_.SATURDAY.getWeek();
            case SUNDAY:
                return Enum_.SUNDAY.getWeek();
            default:
                throw new IllegalArgumentException("非法参数");
        }
    }

    public static void main(String[] args) {
        System.out.println(new Burrito().em);
        System.out.println(Enum_.FRIDAY);
        System.out.println(Enum_.FRIDAY.getWeek());
        Burrito
                b1 = new Burrito(Enum_.MONDAY),
                b2 = new Burrito(Enum_.SUNDAY),
                b3 = new Burrito(Enum_.THURSDAY);
        String d1 = b1.describe();
        String d2 = b2.describe();
        String d3 = b3.describe();
        System.out.println(d1);
        System.out.println(d2);
        System.out.println(d3);
        /* Output:
                null
                FRIDAY
                星期五
                星期一
                星期日
                星期四
         */
    }
}
相关文章
|
6天前
|
Java 索引
Java开发指南 | 第三十篇】Java 枚举(enum)
Java开发指南 | 第三十篇】Java 枚举(enum)
10 1
|
6天前
|
Java 索引
Java 枚举(enum)
5月更文挑战第7天
|
6天前
|
Java 测试技术
Java一分钟之-控制流程:if条件语句与switch
【5月更文挑战第8天】本文探讨了Java编程中的`if`和`switch`控制流程语句,强调了常见问题和易错点。对于`if`语句,需注意使用大括号避免逻辑错误,完整比较操作,以及理解`&&`和`||`的短路行为。在`switch`语句中,要注意只能基于常量进行判断,每个`case`后应有`break`,并提供`default`分支。避免错误的策略包括始终使用大括号、确保清晰的条件、进行代码审查和编写单元测试。掌握这些要点对编写高效、可维护的代码至关重要。
19 0
Java一分钟之-控制流程:if条件语句与switch
|
6天前
|
缓存 Java 开发者
如何高效优雅的使用java枚举
本文通过几种样例展示如何高效优雅的使用java枚举消除冗余代码。
|
6天前
|
存储 算法 Java
滚雪球学Java(20):Java泛型与枚举:提升代码灵活性与可读性
【4月更文挑战第9天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
30 1
滚雪球学Java(20):Java泛型与枚举:提升代码灵活性与可读性
|
6天前
|
安全 Java
Java枚举类
Java枚举类
13 1
|
6天前
|
安全 Java 编译器
Java基础教程(14)-Java中的枚举类,泛型和注解
【4月更文挑战第14天】枚举类型(enum)是固定常量集合,Java中用`enum`定义。特点包括:使用enum关键字,定义类型名和值,可独立或嵌入定义,可实现接口,定义变量和方法。枚举在switch语句中适用,每个枚举值在JVM中唯一,不能继承Enum类。
|
6天前
|
Java
Java switch case 语句
4月更文挑战第11天
|
6天前
|
存储 Java
模式匹配魔法:Java 21中switch语句的巨大进化
模式匹配魔法:Java 21中switch语句的巨大进化
18 0
|
6天前
|
Java
掌握Java 17的利器:Switch语句升级,模式匹配闪耀登场
掌握Java 17的利器:Switch语句升级,模式匹配闪耀登场
31 0