分隔的字符串我在创造在Java中使用枚举的一个问题“ - ” - 分隔的字符串:“ - ”枚举的Java
public enum CipherList{
RSA-MD5,AES128-SHA,AES256-SHA;
}
我收到编译错误。
分隔的字符串我在创造在Java中使用枚举的一个问题“ - ” - 分隔的字符串:“ - ”枚举的Java
public enum CipherList{
RSA-MD5,AES128-SHA,AES256-SHA;
}
我收到编译错误。
-
符号不能用于Java中的标识符。 (如何将RSA-MD5
来,如果RSA
和MD5
正好是整数解析?)
我建议你根据Java编码规范常数related question使用
RSA_MD5, AES128_SHA, AES256_SHA;
。
枚举常量必须使用有效的Java标识符,并且不允许标识符包含破折号。
你可以,例如,用下划线代替破折号:
public enum CipherList{
RSA_MD5, AES128_SHA, AES256_SHA;
}
如果你想用枚举,您可以使用下面的方法来使用精确匹配。
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;
}
}
为什么你需要标识符中的破折号?因为我认为你需要[像这样](http://stackoverflow.com/a/9781903/737620) – wrock
'-'在标识符内无效(因为它会被减号/减法运算混淆。无论如何下次提供有关错误的更多信息,如果你期待一些回复 – SJuan76