在枚举

时间:2017-08-16 07:39:29

标签: java enums

我尝试用这样的特殊字符枚举日期:

public enum Myenum implements enumTypes
{
    TO, '2015-01', '2015-02'
}

但是我收到了一个错误: Invalid character constant2015-01中的2015-02

我想知道如何使用特殊字符进行枚举。

1 个答案:

答案 0 :(得分:5)

你做不到。 Java枚举值必须遵循Java Language Specification version 8, section 3.8 Identifiers

中描述的Java标识符规则
  

标识符是Java字母和Java的无限长度序列   数字,第一个必须是Java字母。

     
Identifier:
   IdentifierChars but not a Keyword or BooleanLiteral or NullLiteral
IdentifierChars:
   JavaLetter {JavaLetterOrDigit}
JavaLetter:
   any Unicode character that is a "Java letter"
JavaLetterOrDigit:
   any Unicode character that is a "Java letter-or-digit"

这意味着不允许单引号(')或减号(-)(以及许多其他不是字母或数字的字符),标识符也不能以一个数字。