我想在枚举中为 java 中的 sql 查询创建一个枚举。例如,我想说 table.create
,它会返回 CREATE TABLE 或 database.create
,它会返回 CREATE DATABASE。我该怎么做?
enum SQL {
table("ALTER,CREATE"),
database("CREATE");
}
最佳答案
在枚举中定义一个枚举:
public static enum SQL {
table(Command.ALTER,Command.CREATE),
database(Command.CREATE);
public static enum Command {
CREATE,
ALTER
}
private final Command[] commands;
private SQL (Command... commands) {
this.commands = commands;
}
public Command[] getCommands() {
return commands;
}
}
尽管您可以这样做,但最好在它自己的类/文件中声明 Command 枚举。我以前从未见过有人在 另一个枚举中声明一个枚举...我几乎喜欢它。
关于java - 枚举中的枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8069929/