当前位置:  开发笔记 > 编程语言 > 正文

IntelliJ getter/setter格式

如何解决《IntelliJgetter/setter格式》经验,为你挑选了5个好方法。

如何让IntelliJ在一行上生成getter/setter,如下所示:

public String getAbc() { return abc; }

代替

public String getAbc() {
   return abc;
}

??



1> 小智..:

我正在使用IntelliJ IDEA 14.1.0,您可以自定义此行为.

只需使用"生成..."选项,或使用Alt+ Insert快捷键,然后选择"Getter和Setter".

在打开的"选择字段"窗口中,顶部有"获取模板"选项.使用下拉列表旁边的"..."按钮编辑模板.

选择"IntelliJ Default"并单击"Copy"按钮创建一个名为"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模板下拉列表中选择它.


确保在一行中检查设置/代码样式/ Java /简单块,在一行中检查简单方法.否则,自动格式化会将线条放回原位,修改模板后看不到任何效果...
为我工作,但准确地说,模板的最后一部分应该是这样的:`$ {name}(){return $ field.name; 在一行中

2> Noel Ang..:

您没有提到您正在使用的IDEA版本,所以我假设最近的8或9.

检查"对齐和大括号"下的代码样式设置.您应该在那里找到"一行中的简单方法"选项.


单行设置告诉IntelliJ将其保留在重新格式化中,但不是以这种方式创建它.

3> laffuste..:

对于2016年的想法.

吸气剂模板

将最后3行合并为一行:

${name}() { return $field.name; }

二传手模板

在最长行的末尾添加双哈希(没有空格):

[...] ($field.type, $paramName) {##

将最后两行合并为一行:

$field.name = $paramName; }

注意:正如@mindas评论的那样,你可能会想要一个没有版本化的视觉自动折叠.



4> David Robles..:

getter和equals/hashcode都没有模板.这些在IDEA中是硬编码的.

资源

你可以在这个IntelliJ愿望清单中看到


现在有(我使用Ultimate 2016) - 请参阅下面的答案

5> mindas..:

我不知道你为什么要这样做,大概是为了节省视觉空间.如果是这样,只需使用IntelliJ的功能来折叠琐碎的getter/setter,并忘记它是如何行的.可以在中找到折叠功能

设置 - > IDE设置 - >编辑器 - >代码折叠 - >显示代码折叠大纲 - >简单属性访问器

推荐阅读
夏晶阳--艺术
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有