<!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--> 1 import java.util.Calendar;
2
3 /**
4 * 演示如何使用 Enum
5 */
6 public class EnumValue {
7
8 public static void main(String[] args) {
9
10 // 演示如何使用 Weekday
11 Weekday w = Weekday.Monday;
12 System.out.println("w = " + w.toString());
13 System.out.println("Monday compares to Friday = "
14 + Weekday.Monday.compareTo(Weekday.Friday));
15
16 System.out.println("Enum value of \"Sunday\" is " + Weekday.valueOf("Sunday"));
17
18 try {
19 System.out.println("Enum value of \"AnotherDay\" is "
20 + Weekday.valueOf("AnotherDay")); // 这里将会抛出 IllegalArgumentException
21 } catch (IllegalArgumentException e) {
22 System.out.println("exception: " + e.getMessage());
23 }
24 System.out.println();
25
26 // --------------------------------
27 // 演示如何使用 Month
28 System.out.println("The first month is " + Month.Jan);
29 System.out.println("The full name of the first month is " + Month.Jan.getFullName());
30 System.out.println("The fifth month is " + Month.valueByIndex(5).getFullName());
31 System.out.println("Index of August is " + Month.valueByFullName("August").getIndex());
32 System.out.println("Now is " + Month.thisMonth().getFullName());
33 }
34 }
35
36 /**
37 * 一个表示星期几的 enum (这是一个简单的例子)
38 */
39 enum Weekday {
40 Monday, Tuesday, Wednesday, Thirsday, Friday, Saturday, Sunday
41 }
42
43 /**
44 * 一个表示月份的 enum (这是一个稍微复杂的例子)
45 */
46 enum Month {
47
48 // 十二个月份
49 Jan("January"), Feb("Febrary"), Mar("March"),
50 Apr("April"), May("May"), June("June"),
51 July("July"), Aug("August"), Sept("September"),
52 Oct("October"), Nov("November"), Dec("December");
53
54 // 全名
55 private String fullName;
56
57 // 构造方法
58 Month(String fullName) {
59 this.fullName = fullName;
60 }
61
62 public String getFullName() {
63 return fullName;
64 }
65
66 // 获取当前 Enum 值是第几个月份。一月份则返回 1。
67 public int getIndex() {
68 return ordinal() + 1;
69 }
70
71 // 根据月数获得 enum 对象
72 public static Month valueByIndex(int index) {
73 for (Month month : Month.values()) {
74 if (month.getIndex() == index) {
75 return month;
76 }
77 }
78 return null;
79 }
80
81 // 根据全名获得 enum 对象
82 public static Month valueByFullName(String fullName) {
83 for (Month month : Month.values()) {
84 if (month.getFullName().equals(fullName)) {
85 return month;
86 }
87 }
88 return null;
89 }
90
91 public static Month thisMonth() {
92 // Calendar 的月份从 0 算起,而 Month 的月份从 1 算起
93 int index = Calendar.getInstance().get(Calendar.MONTH) + 1;
94 return valueByIndex(index);
95 }
96 }
相关推荐
本篇将通过"Java Enum使用Demo源码"深入探讨Java枚举的用法。 首先,枚举在Java中是一个类,可以通过`enum`关键字来声明。例如,我们可以创建一个表示星期的枚举类型: ```java public enum WeekDay { MONDAY, ...
### Java中的Enum深入解析 #### 引言 在Java编程语言中,`Enum`是一种特殊的数据类型,用于处理一组固定的常量。它不仅提供了一种更安全、更灵活的方式来表示一组固定的选择,还包含了丰富的内置功能,使得枚举...
在Java编程语言中,`enum`(枚举)是一种特殊的类,用于定义一组固定的常量。这个特性在很多场合下非常有用,比如表示状态、角色、颜色等有限且不变的集合。本文将深入探讨Java `enum`的用法,包括其基本概念、创建...
在Java编程语言中,`Enum`(枚举)是一种特殊的类类型,用于定义固定的、预定义的常量集合。它们在程序设计中扮演着重要的角色,特别是在需要表示一组固定值时,如状态、颜色、星期等。本资源包提供了一些关于`Enum`...
Java中的枚举(enum)类型是在JDK 1.5版本引入的一个强大的特性,它用于定义一组相关的常量。在C/C++等语言中,枚举通常用来表示一组具有固定值的常量集合,但在Java中,枚举不仅限于此,它提供了更多的功能和灵活性...
根据提供的文件信息,这里将详细解释Java中的枚举(enum)类型,并且深入探讨其用法、特性以及在实际编程中的应用。 ### Java中的枚举(enum) #### 1. 枚举概述 枚举(enum)是Java 1.5版本引入的一种新数据类型...
简单查询算法,供学习参考。 代码中描述了Enum和EnumMap类的使用。
综上所述,`java enum 枚举的spring boot2.x完美实现demo源码`示例主要展示了如何在Spring Boot 2.x项目中使用枚举类型,包括枚举的定义、属性和方法的添加,以及如何在实际业务场景中应用枚举,如与数据库的交互和...
本篇文章将围绕"Core Java"展开,深入解析相关知识点,并结合实际例子进行阐述,如线程管理和文件流操作。这些概念在日常编程中至关重要,无论你是初学者还是经验丰富的开发者,理解并熟练运用它们都能显著提升你的...
Java 枚举(enum)是Java 1.5 引入的一种新的数据类型,它用于表示一组相关的值,这些值可以被当作常量来使用。枚举类型比传统的静态常量更加安全,可读性更好,并且允许进行更丰富的定制。下面我们将详细探讨Java ...
众所周知,在Android 开发中是不推荐使用java 中的ENUM 来编程的。因为ENUM 中每一个value 都会是一个Object 对象。跟常量的int和String 相比,占用的内存要大的多。 那么,如果我们在定义一些常量的时候,如何限制...
- **编译时检查**:使用枚举可以避免运行时错误,因为编译器会在编译时检查是否使用了未定义的枚举值。 - **简洁性**:枚举提供了简洁的方式声明一组相关的常量。 - **可读性**:枚举使得代码更具可读性,因为...
总之,Java的enum类型提供了一种强大且灵活的方式来定义和使用常量集合,它不仅简化了代码,提高了可读性,还提供了额外的类型安全性和扩展性。在处理固定集合的场景下,使用枚举通常是最佳实践。
本篇将深入探讨Java中如何使用enum进行枚举遍历。 1. **枚举的定义** 在Java中,定义一个枚举类型非常简单,只需使用`enum`关键字,后跟枚举名和一组用逗号分隔的枚举值。例如,定义一个表示星期的枚举: ```...
在这个例子中,我们使用`ClassLoader.getSystemResourceAsStream()`来获取类路径下的资源流。这种方法适用于读取项目根目录下的`src/main/resources`中的文件。 为了提高代码可维护性,我们可以在枚举中添加更多的...
在描述中提到,示例包含了jar包、java文件和c文件,这表明它提供了一个完整的例子来演示这个过程。在Linux环境下运行,你需要确保JNA库和编译好的C库(动态链接库.so)都在正确的位置,或者在Java代码中指定了正确的...
Java枚举(enum)是Java语言中的一种特殊数据类型,用于定义一组有限的常量,这些常量在程序中作为固定的值使用。枚举在Java中被引入,目的是为了更好地管理和使用常量,提高代码的可读性和安全性。在本实例代码中,...
在Java编程语言中,`enum`(枚举)是一种强大的类型,它允许开发者定义一组预定义的常量。枚举在许多方面都优于传统的静态常量,因为它提供了更多的功能和灵活性。以下是对Java `enum`的详细用法和实例代码的深入...
Java枚举(enum)是Java语言提供的一种特殊的数据类型,用于定义一组有限的常量,这些常量在程序中作为固定的值使用。枚举在Java中是类的子类型,因此,它们具备类的一些特性,比如可以有方法、变量以及实现接口。...