2016-07-04 52 views
0

基本上,我正在为Minecraft mod编写一个名为Aura Cascade的插件。 光环级联增加了光环(顾名思义),它有不同的颜色。我想补充的光环一些颜色,但有效的颜色在这样一个枚举定义:如何在运行时更改枚举(Java)

public enum EnumAura{WHITE,BLACK,RED,ORANGE,YELLOW,GREEN,BLUE,PURPLE} 

我怎么会在运行时添加值EnumAura?

为了澄清,我的所有代码必须在Aura Cascade初始化后运行。

+4

你不能。他们都是幕后的基本终极价值,[供参考](http://stackoverflow.com/questions/478403/can-i-add-and-remove-elements-of-enumeration-at-runtime-in -java) – Li357

+0

首先在google [DUPLICATED]中回答:http://stackoverflow.com/questions/478403/can-i-add-and-remove-elements-of-enumeration-at-runtime-in-java –

+0

一个' enum'是编译时已知的所有可能值的列表。 –

回答

1

如果我正确理解你的问题,你不能这样做。

请看看到Java文档中关于枚举:https://docs.oracle.com/javase/tutorial/java/javaOO/enum.html

枚举类型

枚举类型是一种特殊的数据类型的变量能够成为 一组预定义的常量。该变量必须等于 中为其预定义的值之一。常见的例子包括 指南针方向(NORTH,SOUTH,EAST和WEST的值)以及一周的日期。

因为它们是常量,所以枚举类型字段的名称是 大写字母。

在Java编程语言中,通过使用enum关键字来定义枚举类型。例如,您可以指定天的星期几的枚举 类型:

public enum Day { 
SUNDAY, MONDAY, TUESDAY, WEDNESDAY, 
THURSDAY, FRIDAY, SATURDAY } 

,您应该使用枚举类型,你需要表示一组固定的常数的任何时间。这包括自然的 枚举类型,例如太阳系中的行星和数据集,其中 您知道编译时的所有可能值 - 例如,菜单上的选项 ,命令行标志等。