2015-09-04 114 views
3

我想实现这样一个枚举:可枚举有多少个参数?

public enum Colors{ 
    REDISH ("red", "crimson", "pink") 
    BLUEISH ("blue", "oceanic", "sky", "darkblue", "lightblue") 
    YELLOWISH ("yellow", "orange") 
    ... 

    private List<String> values; 
} 

上面的代码显然是行不通的,但我找不到任何关于如何实现它的任何信息。

这可以以某种方式完成吗?如果不是,那么将会是一个好的选择?

回答

5

是的,这是可能的。您可以添加一个构造函数,其参数为:

public enum Colors{ 
    REDISH ("red", "crimson", "pink"), 
    BLUEISH ("blue", "oceanic", "sky", "darkblue", "lightblue"), 
    YELLOWISH ("yellow", "orange"); 

    private List<String> values; 

    Colors(String ...strings){ 
     values = Arrays.asList(strings); 
    } 
}