Форматировщик Java
Форматируйте исходный код Java с помощью плагина Prettier, чтобы обеспечить единообразные отступы, расположение скобок, пробелы и переносы строк. Вставьте класс, запись, интерфейс или фрагмент с современными возможностями, такими как записи, запечатанные типы, switch-выражения и текстовые блоки, выберите 2 или 4 пробела либо табуляцию и ширину строки, а затем скопируйте чистый код, готовый к проверке, документированию или отправке в запросе на слияние.
Часто задаваемые вопросы
Какой движок форматирует код?
Инструмент использует Prettier 3 с prettier-plugin-java 2.11, который разбирает Java на сервере с помощью грамматики tree-sitter. Один и тот же код всегда дает одинаковый результат.
Какие версии Java поддерживаются?
Поддерживается современный синтаксис Java, включая записи, запечатанные классы и интерфейсы, сопоставление с образцом, switch-выражения, текстовые блоки, var и лямбда-выражения. Код для Java 8 также форматируется.
Какой отступ используется по умолчанию?
Четыре пробела на уровень — самое распространенное соглашение в Java. Можно выбрать 2 пробела или табуляцию, а также задать ширину строки от 40 до 200 символов; по умолчанию — 80.
Ввод должен быть полным файлом?
Нет. Лучше всего подходят полные файлы с package, импортами и объявлениями типов, но принимаются и фрагменты, например один класс или несколько инструкций. Достаточно, чтобы фрагмент разбирался как Java-код.
Как сообщается о синтаксических ошибках?
Если проблема связана с незакрытой фигурной, круглой или квадратной скобкой либо незакрытой строкой или комментарием, в сообщении указываются строка и столбец. При других ошибках парсер сообщает лишь, что код не является корректным Java-кодом, иногда указывая отсутствующий токен.
Сохраняются ли комментарии и Javadoc?
Да. Строчные комментарии, блочные комментарии и Javadoc остаются при том коде, к которому относятся. Их текст не перераспределяется по строкам.
Будет ли форматировщик менять порядок импортов или элементов?
Нет. Импорты, поля и методы сохраняют исходный порядок. Меняются только пробелы, переносы строк и отступы.
Можно ли форматировать код Android или Spring?
Да. Аннотации, обобщения и код фреймворков — это обычный Java-код, поэтому действия Android, контроллеры Spring и аналогичные классы форматируются так же.
Каков максимальный размер входных данных?
До 1 MB исходного текста на запрос — этого хватит даже для очень больших классов. Форматирование прекращается через 10 секунд.
Сохраняется ли мой исходный код?
Нет. Код форматируется в памяти и сразу отправляется обратно. Сервис записывает только размер запроса, но никогда не сохраняет его содержимое.