微科社区,轻松开发从此开始! 请登陆 免费注册

微科社区

当前位置:首页 > Java平台 > 学习笔记 >

请教关于JDK1.4和ENUM的问题

时间:2017-01-23 03:31  浏览:努力统计中...
项目使用的是JDK1.4版本,在xlsx2csv的时候代码 enum xssfDataType { BOOL, ERROR, FORMULA, INLINESTR, SSTINDEX, NUMBER, } 错误提示为 - enum should not be used as an identifier, since it is a reserved keyword from source lev
项目使用的是JDK1.4版本,在xlsx2csv的时候代码  
 enum xssfDataType {
  BOOL, ERROR, FORMULA, INLINESTR, SSTINDEX, NUMBER,
  }
错误提示为
- 'enum' should not be used as an identifier, since it is a reserved keyword from source level 1.5 on

请问有没有方法可以在JDK1.4中使用enum枚举。谢谢!

木有办法,jdk1.4不支持enum关键字

自己写个类代替吧,enum也是类,不过是块语法糖而已

class XssfDataType{
static final int BOOL = 0;
static final int ERROR = 1;
static final int FORMULA = 2;
static final int INLINESTR = 3;
static final int SSTINDEX = 4;
static final int NUMBER= 5;
}



定义了int变量后,
 private XssfDataType nextDataType;

this.nextDataType = XssfDataType.NUMBER;
后面的类型变量出错了。是不是需要把int类型改为xssfdatatype?

谢谢。

你当 XssfDataType这个用?



如果前面定义了static final int了,后面的xssfdatatype.number肯定也是int的,前面的this.nextdatatype也要随之改成int来判断么?

Java code
public class XssfDataType { static final XssfDataType BOOL = new XssfDataType(0); static final XssfDataType ERROR = new XssfDataType(1); static final XssfDataType FORMULA = new XssfDataType(2); static final XssfDataType INLINESTR = new XssfDataType(3); static final XssfDataType SSTINDEX = new XssfDataType(4); static final XssfDataType NUMBER= new XssfDataType(5); int ordin;//下标 XssfDataType(int ordin){ this.ordin = ordin; }}




还要请教一下。

 private XssfDataType nextDataType;

因为在enum枚举里面需要定义switch case方法,
当 switch (nextDataType)时候,
nextDataType定义类型是必须要int类型么?
Cannot switch on a value of type XssfDataType. Only convertible int values or enum constants are permitted
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线------