小编Unh*_*igg的帖子

枚举中的错误与静态初始化程序

我目前正在开发一个项目(数据库实现),涉及一个名为ElementType内部枚举的枚举类TypeType.在里面ElementType有一个HashMap<TypeType, ArrayList<ElementType>>映射所有的ElementType相应的TypeType值.

TypeType

[TEXT, NUMERIC_EXACT, NUMERIC_APPROX, OTHER]
Run Code Online (Sandbox Code Playgroud)

ElementType(和它们对应的TypeType)的值是

[CHARACTER(TEXT), CHAR(TEXT), DECIMAL(NUMBER_EXACT), DEC(NUMBER_EXACT), NUMERIC(NUMERIC_EXACT), INTEGER(NUMERIC_EXACT), INT(NUMERIC_EXACT), SMALLINT(NUMERIC_EXACT), FLAT(NUMERIC_APPROX), REAL(NUMERIC_EXACT), DOUBLE_PRECISION(NUMERIC_APPROX), DOUBLE(NUMERIC_APPROX), DATE(OTHER), TIME(OTHER), VARCHAR(OTHER), LONG_VARCHAR(OTHER)]

在一个static {}地区,我有这个代码:

for(ElementType eType : values()) {
    TypeType t = eType.getTYPE();
    if(typeMapping.get(t) != null)
        typeMapping.get(t).add(eType);
    else
        typeMapping.put(t, new ArrayList<ElementType>() {add(eType);});
}
Run Code Online (Sandbox Code Playgroud)

eType在for循环中的所有提及都在Eclipse中用下划线标记为红色.

第一个给出了错误eType cannot be resolved.

第二个给出eType cannot be resolved to a variable …

java enums

2
推荐指数
1
解决办法
459
查看次数

标签 统计

enums ×1

java ×1