“ - ”在枚举java中分隔字符串

时间:2012-05-23 07:16:47

标签: java enums compilation

我在使用“ - ”创建Java中的枚举时遇到问题 - 分隔字符串:

public enum CipherList{

   RSA-MD5,AES128-SHA,AES256-SHA;
}

我收到了编译错误。

3 个答案:

答案 0 :(得分:7)

-符号不能用于Java中的标识符。 (如果RSA-MD5RSA碰巧是整数,将如何解析MD5?)

我建议你使用

RSA_MD5, AES128_SHA, AES256_SHA;

根据常量 related question 的Java编码约定。

答案 1 :(得分:3)

枚举常量必须使用有效的Java标识符,并且不允许标识符包含破折号。

例如,您可以用下划线替换破折号:

public enum CipherList{
   RSA_MD5, AES128_SHA, AES256_SHA;
}

答案 2 :(得分:3)

如果要使用枚举使用完全字符串,可以使用以下方法。

enum CipherList{
   CHIP_ONE("RSA-MD5"),CHIP_TWO("AES128-SHA"),CHIP_THREE("AES256-SHA");
   private String code;
   CipherList(String code) {
      code= code;
   }
   String getcode() {
      return code;
   } 
}