你怎麼能得到的IntelliJ就這樣一行生成的getter/setter方法:的IntelliJ的getter/setter格式
public String getAbc() { return abc; }
而不是
public String getAbc() {
return abc;
}
?
你怎麼能得到的IntelliJ就這樣一行生成的getter/setter方法:的IntelliJ的getter/setter格式
public String getAbc() { return abc; }
而不是
public String getAbc() {
return abc;
}
?
你沒有提到你使用的是什麼版本的想法,所以我想在最近8或9
檢查你的代碼樣式設置,在「對齊方式和大括號」。你應該在那裏找到一個「簡單的方法在一行」選項。
我們是8.1.3。這似乎沒有工作,但.. – 2009-11-23 19:09:52
您是否嘗試取消選中「保留重新格式化」組中的相關「換行符」框? – seh 2009-11-23 19:13:45
單行設置告訴IntelliJ在重新格式化時保留它,但不要這樣創建它。 – 2009-11-23 22:31:07
我不知道爲什麼你要做到這一點,想必保存的視覺空間。如果是這樣,只需使用IntelliJ的功能來摺疊簡單的getter/setter,並忘記它如何行。 摺疊功能可以在
設置中找到 - > IDE設置 - >編輯 - >代碼摺疊 - >顯示代碼摺疊大綱 - >簡單屬性訪問
我使用的IntelliJ IDEA 14.1.0,你可以自定義此行爲。
只需使用 「生成...」 選項,或者使用Alt鍵 + 插入快捷方式,選擇 「getter和setter」。
在打開「Select Fields」窗口中,頂部有「Getter Template」選項。使用下拉列表旁邊的「...」按鈕編輯模板。
選擇「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模板下拉列表中選擇它。
適用於Idea 2016。
消氣模板
合併的最後3行到單個行:
${name}() { return $field.name; }
設置器模板
在的末尾添加雙散列(沒有空格)最長的行:
[...] ($field.type, $paramName) {##
合併的最後兩行成一條線:
$field.name = $paramName; }
注:如由@mindas評論,你可能會想,而不是視覺的自動摺疊,不得到版本。
現在有(我使用Ultimate 2016) - 請參閱下面的回答 – werner 2016-08-04 09:12:42