Java 8 标记“”上的语法错误;“1”;,枚举Java中需要标识符
我想实现Java 8 标记“”上的语法错误;“1”;,枚举Java中需要标识符,java-8,Java 8,我想实现Enum对于Number,我想得到它各自的字符串值。我已经跟踪了链接: 我得到的错误是 令牌“1”上的语法错误,应为标识符 令牌“2”上的语法错误,应为标识符 Java中的任何标识符名称都不能以数字开头,它必须遵循为在Java中使用有效变量名而指定的规则 根据Oracle变量: 变量名区分大小写。变量的名称可以是任何合法名称 标识符-Unicode字母和字符的无限长序列 以字母开头的数字、美元符号“$”或 下划线字符“\” 由于枚举中的字段实际上是公共静态最终字段(单例实例)或类变量,因
Enum
对于Number
,我想得到它各自的字符串值。我已经跟踪了链接:
我得到的错误是
令牌“1”上的语法错误,应为标识符
令牌“2”上的语法错误,应为标识符
Java中的任何标识符名称都不能以数字开头,它必须遵循为在Java中使用有效变量名而指定的规则 根据Oracle变量: 变量名区分大小写。变量的名称可以是任何合法名称 标识符-Unicode字母和字符的无限长序列 以字母开头的数字、美元符号“$”或 下划线字符“\” 由于
枚举
中的字段实际上是公共静态最终字段
(单例实例)或类变量,因此它们遵循与普通Java变量相同的命名规则集
您需要重构代码以:
public enum CompanyCityType {
NEW_YORK(1),
RESTON(2);
private int companyCityType;
CompanyCityType(int companyCityType) {
this.companyCityType = companyCityType;
}
public int getCompanyAddrType() {
return this.companyCityType;
}
}
创建名为
1
的枚举而不是仅仅使用1
没有那么大的优势;也许NEW_YORK
或者其他(类型名称可能更好)会更具信息性您不能以数字开头命名字段,这是Java中的规则。枚举常量是:“标识符是Java字母和Java数字的无限长序列,其中第一个必须是Java字母。”
public enum CompanyCityType {
NEW_YORK(1),
RESTON(2);
private int companyCityType;
CompanyCityType(int companyCityType) {
this.companyCityType = companyCityType;
}
public int getCompanyAddrType() {
return this.companyCityType;
}
}