要通过注解获取枚举值,可以使用反射来获取注解的属性值。首先,定义一个枚举类型和一个注解,然后在枚举类型中使用注解来标记每个枚举值,并设置对应的属性值。接着,在需要获取枚举值的地方,通过反射获取注解的属性值。
下面是一个示例代码:
import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.FIELD) @interface EnumValue { String value(); } enum Color { @EnumValue("Red") RED, @EnumValue("Green") GREEN, @EnumValue("Blue") BLUE } public class Main { public static void main(String[] args) { Color color = Color.RED; EnumValue annotation = color.getClass().getField(color.name()).getAnnotation(EnumValue.class); String value = https://www.yisu.com/ask/annotation.value();"Enum value: " + value); } }
在上面的示例中,定义了一个枚举类型Color
和一个注解EnumValue
,并在枚举值中使用注解标记并设置属性值。在Main
类中,通过反射获取Color
枚举类型中RED
枚举值的注解属性值并打印出来。
执行上面的代码,将输出:
Enum value: Red