我在Java中有一个枚举:
public enum Months
{
    JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC
}
我想按索引访问枚举值,例如
Months(1) = JAN;
Months(2) = FEB;
...
我该怎么办?
                
                12
              
                  在计算机科学中,索引从0开始,而不是1 ;-)
                
                
                  
                    —
                    fredoverflow 2011年
                    
                  
                
              
                  你确定你要?通常,除了实现低级数据结构(然后使用替代机制,例如名称,以实现持久性)之外,您不应该碰序。
                
                
                  
                    —
                    汤姆·哈特芬
                    
                  
                
              
                  您也可以在java.util.Calendar类中使用常量。它们在1月至12月的编号为0-11,请注意12,因为这是12月(与阴历有关)。但是我很好奇,为什么要重新发明JRE中已经“存货”的月份常数呢?
                
                
                  
                    —
                    克里斯·奥尔德里奇
                    
                  
                
              
                  2FredOverflow:同意,我使用了错误的索引。2Tom Hawtin:是的,我确定。我使用某些框架来持久化数据,然后返回整数索引,而不是枚举。2克里斯·奥尔德里奇(Chris Aldrich):这只是一个虚拟的例子,与实际情况不符。
                
                
                  
                    —
                    jk_ 2011年