Обтекание вызовов методов в отдельной строке в Eclipse для Java - PullRequest
95 голосов
/ 08 июня 2011

Мне не удалось понять, как обернуть каждый вызов метода в Eclipse.Например, у меня есть это:

someObject.A().B().C();

Но я действительно хочу это:

someObject.A()
          .B()
          .C();

Ничто в разделе "Обтекание строк" в Eclipse не дает мне такой результат.

Ответы [ 7 ]

173 голосов
/ 04 мая 2012

В дополнение к ответу Дипака Азада, вам нужно следующее:

Windows : Окно → Настройки → Java → Стиль кода
→ Форматер → Правка → Перенос строки (вкладка)

Mac OS : ADT → Настройки → Java → Стиль кода
→ Форматер → Правка → Перенос строки (вкладка)

Затем в списке слева выберите:

Вызовы функций → Квалифицированные вызовы

Теперь под этим списком установите Политика переноса строк в:

Обернуть все элементы, кроме первого, если в этом нет необходимости

Проверка

Сила разделения, даже если линия короче максимальной ширины линии

Наконец, установите Политика отступов в (спасибо @ Turbo ):

Отступ в столбце

Это должно дать вам точное поведение, о котором вы просили.


БОНУС: Android Studio / IntelliJ Идея:

Mac OS : Android Studio → Настройки (Cmd +,) → Редактор → Стиль кода → Java → Вкладка и фигурные скобки вкладка → Цепные вызовы методов

выберите

Заворачивать всегда

и отметьте

Выровнять при многострочном

9 голосов
/ 08 июня 2011

Окно → Настройки → Java → Стиль кода → Форматер → Редактировать → Перенос строк → Никогда не объединять уже перенесенные строки

7 голосов
/ 08 июня 2011

Окно> Параметры> Java> Стиль кода> Формататор> Правка> Перенос строки> Вызовы функций, установите для «Политики переноса строк» ​​значение «Обтекать все элементы, каждый элемент на новой строке».

4 голосов
/ 15 марта 2017

Для тех, у кого настройки форматирования кода затмения включены в систему управления версиями (для согласованного форматирования кода во всей команде), папка .settings включена.

Свойство, которое даст вам такое поведение форматирования, находится в файле .settings/org.eclipse.jdt.core.prefs.

Свойство:

org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=80
2 голосов
/ 31 января 2012

Если вы хотите самостоятельно выполнить форматирование этих сегментов, вы можете запретить затмению переформатировать эти сегменты, используя:

// @formatter:off
...
// @formatter:on

Возможно, вам потребуется включить это в ваших предпочтениях: http://archive.eclipse.org/eclipse/downloads/drops/R-3.6-201006080911/eclipse-news-part2.html#JavaFormatter

Смотрите также: Как отключить средство форматирования кода Eclipse для определенных разделов кода Java?

0 голосов
/ 12 июня 2017

in: Окно-> Настройки-> Java-> Стиль кода-> Формататор-> Редактировать-> Перенос строки-> Вызов функции-> Квалифицированный вызов

выберите политику отступа в качестве отступа для столбца

0 голосов
/ 10 февраля 2017

Настройте ваш форматер eclipse в java и javascript.увеличьте максимальную линию, которая соответствует вашему экрану.imagepreferences">

Edit

...