Как вы можете получить IntelliJ для генерации геттер/сеттеры на одной линии, как это:IntelliJ геттер/сеттер формат
public String getAbc() { return abc; }
Вместо
public String getAbc() {
return abc;
}
??
Как вы можете получить IntelliJ для генерации геттер/сеттеры на одной линии, как это:IntelliJ геттер/сеттер формат
public String getAbc() { return abc; }
Вместо
public String getAbc() {
return abc;
}
??
Нет шаблонов ни для геттеров, ни для equals/hashcode. Они жестко закодированы в IDEA.
Вы можете видеть, что в этом IntelliJ Wishlist
Вы не упомянули, какую версию IDEA вы используете, поэтому я предполагаю, что в последнее время 8 или 9.
Проверьте настройки кода стиля, в разделе «Выравнивание и фигурные скобки». Вы должны найти опцию «Простые методы в одной строке».
Мы - 8.1.3. Это, похоже, не работает, хотя .. –
Вы попытались снять флажок связанного с этим раздела «Разрывы строк» в группе «Keep When Reformatting»? – seh
Однострочный параметр сообщает IntelliJ о том, чтобы оставить его таким образом на переформатировании, но не создавать его таким образом. –
Я не знаю, почему вы хотите сделать это, предположительно, для экономии визуального пространства. Если это так, просто используйте функцию IntelliJ, чтобы сбрасывать тривиальные getters/seters и забывать о том, как это делается. Складной функцию можно найти в
Настройки -> IDE Настройки -> Редактор -> Code Folding -> Показать код складной контур -> Простое свойство
методы доступаЯ использую IntelliJ IDEA 14.1.0, и вы можете настройте это поведение.
Просто используйте опцию "Создать ...", или использовать Alt +Вставить ярлык, и выберите "Getter и Setter".
В окне «Выбрать поля», которое открывается, у вас есть опция «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.
Это выглядит многообещающим, но я не вижу кнопку шаблона Getter в верхней части этого диалога. Использование 14.0.2. – Gervase
Работал для меня, но если быть точным, последняя часть шаблона должна выглядеть так: '$ {name}() {return $ field.name; } ' в одной строке –
Обязательно проверьте также настройки/код Стиль/Java/простые блоки в одной строке и простые методы в одной строке. В противном случае автоматическое форматирование вернет строки обратно, и после изменения шаблона вы не увидите никакого эффекта ... – werner
Для Idea 2016.
шаблон Getter
Merge последние 3 строки в одной строке:
${name}() { return $field.name; }
сеттер шаблона
Добавить двойной хэш (без пробела) в конце наибольшая длина:
[...] ($field.type, $paramName) {##
Merge последних 2 строк в одну строку:
$field.name = $paramName; }
Примечания: в прокомментирована @mindas, вы, вероятно, захотите вместо визуального автоматического складывания, который не получает версирован.
Теперь (я использую Ultimate 2016) - см. Ответы ниже – werner