当前位置 : 主页 > 编程语言 > java >

java enum 怎么创建实例

来源:互联网 收集:自由互联 发布时间:2023-10-10
Java Enum 怎么创建实例 在Java中,Enum是一种特殊的类,表示一组预定义的常量。通常,我们使用Enum来表示一组相关的常量,例如颜色、星期几等。在本文中,我们将探讨如何创建Enum实例

Java Enum 怎么创建实例

在Java中,Enum是一种特殊的类,表示一组预定义的常量。通常,我们使用Enum来表示一组相关的常量,例如颜色、星期几等。在本文中,我们将探讨如何创建Enum实例,并解决一个具体的问题:如何使用Enum来表示一周的工作日和休息日。

问题描述

我们的问题是,如何使用Java Enum来表示一周的工作日和休息日,并对其进行操作和比较。

解决方案

为了解决这个问题,我们可以创建一个名为WeekDay的Enum,并在其中定义每个工作日和休息日。我们还可以添加一些方法来操作和比较这些Enum实例。

下面是一个示例代码:

public enum WeekDay {
    MONDAY(true),
    TUESDAY(true),
    WEDNESDAY(true),
    THURSDAY(true),
    FRIDAY(true),
    SATURDAY(false),
    SUNDAY(false);

    private boolean isWorkingDay;

    private WeekDay(boolean isWorkingDay) {
        this.isWorkingDay = isWorkingDay;
    }

    public boolean isWorkingDay() {
        return isWorkingDay;
    }

    public boolean isWeekend() {
        return !isWorkingDay;
    }
}

在上述代码中,我们创建了一个名为WeekDay的Enum,并定义了每个工作日和休息日的实例。每个实例都有一个isWorkingDay属性,用于表示该日是否是工作日。我们还定义了两个方法isWorkingDay()isWeekend()来判断一个实例是否是工作日或休息日。

现在,我们可以使用这些Enum实例来执行各种操作,例如检查一个日期是否是工作日,或者打印一周的工作日和休息日。

代码示例

下面是一些使用WeekDay Enum的示例代码:

public class Main {
    public static void main(String[] args) {
        WeekDay monday = WeekDay.MONDAY;
        WeekDay sunday = WeekDay.SUNDAY;

        System.out.println(monday.isWorkingDay()); // 输出 true
        System.out.println(sunday.isWorkingDay()); // 输出 false

        if (monday.isWorkingDay()) {
            System.out.println("今天是工作日");
        } else {
            System.out.println("今天是休息日");
        }

        if (sunday.isWeekend()) {
            System.out.println("今天是休息日");
        } else {
            System.out.println("今天是工作日");
        }

        // 遍历一周的工作日和休息日
        for (WeekDay day : WeekDay.values()) {
            System.out.println(day.name() + ": " + (day.isWorkingDay() ? "工作日" : "休息日"));
        }
    }
}

上述代码中,我们创建了两个WeekDay实例:mondaysunday。我们使用isWorkingDay()方法检查这两个实例是否是工作日,并打印相应的结果。

我们还使用了if语句来根据实例的属性输出不同的信息。最后,我们使用values()方法遍历了一周的工作日和休息日,并打印了相应的结果。

结果输出

true
false
今天是工作日
今天是休息日
MONDAY: 工作日
TUESDAY: 工作日
WEDNESDAY: 工作日
THURSDAY: 工作日
FRIDAY: 工作日
SATURDAY: 休息日
SUNDAY: 休息日

上述代码的输出结果符合我们的预期:monday是工作日,sunday是休息日,并且遍历的结果也正确。

甘特图

下面是使用Mermaid语法绘制的甘特图,展示了我们解决问题的过程:

gantt
    dateFormat  YYYY-MM-DD
    title 解决问题的甘特图

    section 创建Enum实例
    创建Enum实例          : 2022-01-01, 1d

    section 添加操作和比较方法
    添加操作和比较方法   : 2022-01-02, 2d

    section 测试代码
    编写测试代码          : 2022-01-03, 2d
【本文转自:海外高防服务器 http://www.558idc.com/krgf.html 欢迎留下您的宝贵建议】
上一篇:java enum 动态添加
下一篇:没有了
网友评论