IntelliJ getter/setter format (单行与多行)
2022-09-01 07:16:07
如何让 IntelliJ 在一行上生成 getter/setters 访问器方法,如下所示:
public String getAbc() { return abc; }
...而不是像这样的多行:
public String getAbc() {
return abc;
}
如何让 IntelliJ 在一行上生成 getter/setters 访问器方法,如下所示:
public String getAbc() { return abc; }
...而不是像这样的多行:
public String getAbc() {
return abc;
}
我正在使用IntelliJ IDEA 14.1.0,您可以自定义此行为。
只需使用“生成...”选项,或使用 + 快捷方式,然后选择“Getter and Setter”。AltInsert
在打开的“选择字段”窗口中,顶部有“Getter模板”选项。使用“...”按钮,以编辑模板。
选择“IntelliJ Default”,然后单击“复制”按钮以创建一个名为“AlwayStartWithGet”的新按钮,您可以对其进行编辑。
只需删除以下部分:
#if ($field.boolean)
#if ($StringUtil.startsWithIgnoreCase($name, 'is'))
#set($name = $StringUtil.decapitalize($name))
#else
is##
#end
#else
get##
#end
并用简单的
get##
您应该留下:
public ##
#if($field.modifierStatic)
static ##
#end
$field.type ##
#set($name = $StringUtil.capitalizeWithJavaBeanConvention($StringUtil.sanitizeJavaIdentifier($helper.getPropertyName($field, $project))))
get##
${name}() {
return $field.name;
}
现在,您可以在生成代码时使用自定义模板,方法是在 getter 模板下拉列表中选择它。
对于创意2016。
格特模板
将最后 3 行合并为一行:
${name}() { return $field.name; }
二传手模板
在最长行的末尾添加双哈希(不带空格):
[...] ($field.type, $paramName) {##
将最后 2 行合并为一行:
$field.name = $paramName; }
注意:正如@mindas所评论的那样,您可能希望使用不会进行版本控制的可视自动折叠。