在CTRL+space中,有没有一种-like方法可以围绕给定的Java Enum“自动构建”一个切换用例?我想要一个包含所有枚举案例的存根...
发布于 2010-04-12 07:08:19
我不知道是否可以作为模板这样做,因为模板必须知道您使用的是哪种枚举类型。但是您可以编写一个小脚本来为您打印语句,然后将其输出复制到源文件中。
public class SwitchWriter {
public static void printSwitchStatement(String varName, Class<?> E) {
System.out.format("switch(%s) {\n", varName);
for (Object o : E.getEnumConstants()) {
System.out.format("case %s:\n // TODO: Auto-generated switch statement stub\n break;\n", o);
}
System.out.println("default:\n // TODO: Auto-generated switch statement stub\n}");
}
}
SwitchWriter.printSwitchStatement("action", java.awt.Desktop.Action.class)
的输出
switch(action) {
case OPEN:
// TODO: Auto-generated switch statement stub
break;
case EDIT:
// TODO: Auto-generated switch statement stub
break;
case PRINT:
// TODO: Auto-generated switch statement stub
break;
case MAIL:
// TODO: Auto-generated switch statement stub
break;
case BROWSE:
// TODO: Auto-generated switch statement stub
break;
default:
// TODO: Auto-generated switch statement stub
}
发布于 2010-04-12 06:16:56
您可以使用: Windows->Preferences->Java->Editor->Templates.添加您自己的代码模板
添加代码模板后,键入足够的模板名称字符以使其唯一;键入CTRL+Space;您定义的代码将替换模板名称字符。
在Eclipse Galileo中预定义了switch的模板。sw+CTRL+Space应该会给你一个switch语句。您可能需要调整现有的模板以提供switch-enum组合。
https://stackoverflow.com/questions/2618797
复制相似问题