Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java如何创建包含元素“的枚举”;时间戳(6)";_Java - Fatal编程技术网

Java如何创建包含元素“的枚举”;时间戳(6)";

Java如何创建包含元素“的枚举”;时间戳(6)";,java,Java,我正在尝试在一个基于数据类型构建查询的应用程序中构建一个高级搜索功能 我的潜在数据类型是FLOAT、NUMBER、CHAR、VARCHAR2、DATE、TIMESTAMP(6) 我正在尝试“从我的shell中编写代码”,而不是使用ArrayList来存储值,我将尝试使用enum,因为我只有这6个值,它们永远不会更改 TIMESTAMP(6)因为括号的缘故让我很难过 如何声明枚举值时间戳(6) 目前,下面的代码段给了我一个错误:构造函数TableBacking.dataTypeOptions(in

我正在尝试在一个基于数据类型构建查询的应用程序中构建一个高级搜索功能

我的潜在数据类型是
FLOAT、NUMBER、CHAR、VARCHAR2、DATE、TIMESTAMP(6)

我正在尝试“从我的shell中编写代码”,而不是使用ArrayList来存储值,我将尝试使用
enum
,因为我只有这6个值,它们永远不会更改

TIMESTAMP(6)
因为括号的缘故让我很难过

如何声明枚举值
时间戳(6)

目前,下面的代码段给了我一个错误:构造函数TableBacking.dataTypeOptions(int)未定义

public enum dataTypeOptions {
    FLOAT, NUMBER, CHAR, VARCHAR2, DATE, TIMESTAMP(6)
};

枚举常量名称必须是有效标识符。例如,您可以将其称为
TIMESTAMP_6

如果以后需要返回
时间戳(6)
的字符串表示,可以在枚举中使用字符串构造函数来定义该值

它可能是这样的:

public enum dataTypeOptions {

    FLOAT, NUMBER, CHAR, VARCHAR2, DATE, TIMESTAMP_6("TIMESTAMP(6)");
    private String stringRepresentation;

    dataTypeOptions() { //default behaviour, use the enum constant identifier
        this.stringRepresentation = this.name();
    }

    dataTypeOptions(String s) {
        this.stringRepresentation = s;
    }

    public String getStringRepresentation() {
        return stringRepresentation;
    }

};

枚举常量名称必须是有效标识符。例如,您可以将其称为
TIMESTAMP_6

如果以后需要返回
时间戳(6)
的字符串表示,可以在枚举中使用字符串构造函数来定义该值

它可能是这样的:

public enum dataTypeOptions {

    FLOAT, NUMBER, CHAR, VARCHAR2, DATE, TIMESTAMP_6("TIMESTAMP(6)");
    private String stringRepresentation;

    dataTypeOptions() { //default behaviour, use the enum constant identifier
        this.stringRepresentation = this.name();
    }

    dataTypeOptions(String s) {
        this.stringRepresentation = s;
    }

    public String getStringRepresentation() {
        return stringRepresentation;
    }

};

我认为问题在于
VARCHAR2
TIMESTAMP(6)
的名称。如果你能想出一个更好的抽象,比如
code
(而不是
VARCHAR2
)和
AUDIT\u TIMESTAMP
(intead of
TIMESTAMP(6)
),我想问题在于
VARCHAR2
TIMESTAMP(6)
的名称。如果你能想出一个更好的抽象,比如
code
(而不是
VARCHAR2
)和
AUDIT\u TIMESTAMP
(intead of
TIMESTAMP(6)
)。回答得很好,但是看到这个,我想使用带有预定义值的ArrayList可能会简单得多。回答得很好,但是看到这个之后,我认为只使用带有预定义值的ArrayList可能会简单得多。