我非常感谢NetBeans如何自动输入我正在处理的代码的结束括号。是否有可能进一步简化看起来像这样的代码的开发?:
public class Test
{
public static void main(String[] Args)
{
//Some code here
while(true)
{
//Some more code here
}//end while
}//end main
}//end class
答案 0 :(得分:0)
不幸的是,似乎没有办法自定义NetBeans添加结束括号时生成的内容:在Tools-> Options-> Editor->中只有一个关闭是否执行此操作的复选框。代码完成。
以下是下一个最佳解决方案:
NetBeans具有“代码模板”,它是预定义代码的片段,当您键入某些预定义缩写然后单击选项卡时会自动生成这些代码。例如,如果您键入if
并按Tab键,则编辑器应生成以下代码:
if (true) {
}
您可以根据需要修改这些代码模板,也可以创建自己的新代码模板。转到工具 - >选项 - >编辑器 - >代码模板。您将看到一个广泛的模板列表,每个模板都与缩写相匹配,还有一个小编辑框来更改它们。如果向下滚动到“if”,您将看到此定义:
if (${EXP instanceof="boolean" default="true"}) {
${selection}${cursor}
}
您需要做的就是修改它以生成您想要的内容:
if (${EXP instanceof="boolean" default="true"}) {
${selection}${cursor}
}//end if
您可以为其他语句执行类似操作,例如while
。您会注意到每个语句通常会根据不同的模式存在多个模板,因此根据您希望的完整程度而变得乏味。
此解决方案也适用于main
方法,因为已为其定义了一个模板 - 键入psvm
并使用Tab键生成它。对于其他任意方法,有一个缩写为m
的模板。
为顶级课程实现此效果会有所不同。转到工具 - >模板。在这里,您将看到另一组可以浏览和修改的模板。不同之处在于这些是针对文件而不是代码片段。展开Java并打开Java Class模板文件。你会看到以下内容:
<#assign licenseFirst = "/*">
<#assign licensePrefix = " * ">
<#assign licenseLast = " */">
<#include "../Licenses/license-${project.license}.txt">
<#if package?? && package != "">
package ${package};
</#if>
/**
*
* @author ${user}
*/
public class ${name} {
}
再一次,您可以根据需要修改此模板:
public class ${name} {
}//end class
甚至:
public class ${name} {
}//end {$name}
将//end Foo
用于名为Foo