`

java 关于枚举类型 valueOf方法

阅读更多

  在java中使用枚举类型时

public enum TestEnum{

TEST1("test1"),

TEST2("test2"),

TEST3("test3"),

TEST4("test4"),;

 

private TestEnum(String code) {

this.code = code;

}

 

private String code;

 

public String getText() {

return this.getText();

}

 

public String getCode() {

return this.code;

}

 

}

 

当想要通过一个String获取枚举时,默认可以使用枚举本身提供的 ValueOf,但是是需要两个参数,

特殊的地方是,String类型的valueOf(String) 方法 ,枚举给隐士提供一个静态方法。

其他类型就需要自己定义喽。

 

TestEnum.valueOf("TEST1");形式获取

 

以下是API描述。

 

 

public static <T extends Enum<T>> T valueOf(Class<T> enumType,
                            String name)
Returns the enum constant of the specified enum type with the specified name. The name must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

Note that for a particular enum type T, the implicitly declared public static T valueOf(String) method on that enum may be used instead of this method to map from a name to the corresponding enum constant. All the constants of an enum type can be obtained by calling the implicit public static T[] values() method of that type.

Type Parameters:
T - The enum type whose constant is to be returned
Parameters:
enumType - the Class object of the enum type from which to return a constant
name - the name of the constant to return
Returns:
the enum constant of the specified enum type with the specified name
Throws:
IllegalArgumentException - if the specified enum type has no constant with the specified name, or the specified class object does not represent an enum type
NullPointerException - if enumType or name is null
Since:
1.5
分享到:
评论

相关推荐

    Java枚举类型Enum的用法

    接下来,我们将深入探讨Java枚举类型的使用方法及其相关知识点。 1. **枚举的声明与初始化** 枚举类型的声明方式类似于类,但以`enum`关键字开头。例如: ```java enum Color { RED, GREEN, BLUE } ``` 这里...

    Java中枚举类型的使用.docx

    - **自动提供方法:** 枚举类型自动提供了`values()`和`valueOf()`等方法,方便使用。 #### 五、枚举类型进阶使用 在实际应用中,我们往往需要给枚举类型添加更多的属性或行为。例如,在上述文档中提到的报销状态...

    java enum 枚举 学习资料

    valueOf(String arg0) 方法是枚举类中的一个静态方法,它通过传入的 arg0 字符串解析出一个该枚举类的实例,其中传入的字符串必须是元素列表的名称之一,否则将抛出 java.lang.IllegalArgumentException 异常。...

    理解java枚举类型

    此外,还可以使用`valueOf()`方法将字符串转换为对应的枚举常量。 五、枚举与switch语句 枚举类型在`switch`语句中表现得非常有效。它可以替代传统的if-else if-else结构,使代码更加简洁和易读。 六、枚举与源码...

    高阶Java-Java枚举类型 enum 应用详解

    2. `valueOf(String)`方法: 根据字符串转换为对应的枚举实例,如果不存在则抛出异常: ```java Color color = Color.valueOf("RED"); ``` 三、枚举构造器与初始化 1. 枚举构造器: 枚举类型可以有自己的构造器,...

    Java中的“枚举类型

    - **隐含字段和方法**:枚举类内部包含了`values()`和`valueOf()`等方法。 #### 五、总结 通过本文的讨论可以看出,尽管使用`static final`字段也能实现某些枚举类型的功能,但枚举类型提供的类型安全、扩展性和...

    java枚举类型enum的使用

    ### Java 枚举类型 enum 的使用详解 #### 一、枚举类型概述 在 Java 中,枚举(enum)是一种特殊的类,它被用来表示一组固定的常量值。枚举类型自 JDK 1.5 开始引入,为开发者提供了一种更加安全、简洁的方式来...

    JAVA枚举类型的用法.doc

    - 也可以通过`valueOf()`方法根据名称获取枚举常量,例如`Belle.valueOf("para1")`。 5. **枚举成员方法**: - 枚举类型中的成员方法可以是抽象的,每个枚举常量需要实现这个方法。例如: ```java public enum ...

    java编程枚举类型那些事!枚举类型定义和重写枚举的方法

    枚举类还提供了许多有用的方法,例如 `name()`、`toString()`、`valueOf()` 等。 枚举类型还可以实现接口,例如: ```java interface People_State { String getState(); State_Enum ChangeState(); } enum ...

    Java中怎样由枚举常量的ordinal值获得枚举常量对象

    Java1.5提供了关键字enum,能够通过该关键字方便得定义自己须要的枚举类型,比方  enum Season { ...也是说,使用name()方法和valueOf(String)方法能够在枚举类型对象和字符串之间方便得转换。当然,假设valu

    2021年JAVA枚举类型知识点.docx

    以下是关于Java枚举类型的详细知识点: 1. **枚举定义**: - 枚举类型通过`enum`关键字来定义,例如`public enum Color {RED, BLUE, BLACK, YELLOW, GREEN}`。 - 枚举实际上是`java.lang.Enum`类的子类,这意味着...

    2022年掌握JDK1.5枚举类型Java教程.docx

    以下是关于Java枚举类型的一些关键知识点: 1. 构造函数:枚举类无法拥有公共构造函数,这意味着外部代码无法直接创建新的枚举实例,确保了枚举的唯一性。 2. 枚举常量属性:枚举类型的每个实例(枚举常量)都是...

    列举java 枚举相关信息

    ### Java 枚举类型详解 #### 一、引言 ...通过以上的介绍,我们可以看到Java枚举类型不仅提供了类型安全的保障,还为开发者带来了极大的灵活性。合理地使用枚举类型,可以显著提高代码的质量和可维护性。

    java 通过反射获取枚举类,及枚举类的值,枚举类枚举实例名

    4. **通过名称获取枚举实例**:如果已知枚举的名称,可以使用`valueOf()`方法获取对应的枚举实例。 ```java Color colorFromName = colorClass.valueOf("RED"); // 获取到RED枚举实例 ``` 5. **枚举的构造函数**:...

    Java枚举类型在switch语句正确使用方法详解

    在上面的代码中,首先使用 `valueOf()` 方法将用户输入的类型转换为枚举类型,然后使用 switch 语句来处理不同的枚举类型。 如果需要根据类型的名称返回枚举实例,可以在枚举类中加入一个方法,例如: ```java ...

    说说Java中的枚举 转 可以了,够了 包括EnumSet(Map)

    这篇博客将深入探讨Java枚举的特性和使用方法,包括`EnumSet`和`EnumMap`这两个与枚举相关的数据结构。 首先,枚举定义的基本语法是`public enum EnumName {constant1, constant2, ...}`。每个枚举常量都是`...

    mybatis入门实战之枚举类型

    本文将深入探讨在MyBatis中如何使用枚举类型,并通过实际的项目"mybatis入门实战之枚举类型"进行讲解。这个项目提供了一个简单的demo,非常适合初学者了解并实践MyBatis的TypeHandler机制。 首先,我们要明白枚举...

    spring boot 枚举使用的坑整理

    解决方法是重写枚举类型的toString()方法,以便正确地输出枚举类型的值。 坑四:枚举类型的ordinal()方法 枚举类型的ordinal()方法可能会出现问题。如果枚举类型的ordinal()方法没有被重写,可能会出现问题。例如...

    java枚举的一个实例

    此外,枚举类型不能被实例化,除非通过`values()`或`valueOf()`方法,这增加了代码的可控性。 在Java中,枚举还可以用于switch语句,提供了一种更安全的替代传统的if...else if...else结构。例如: ```java ...

Global site tag (gtag.js) - Google Analytics