Руководство пользователя IntelliJ IDEA. Автодополнение кода.

Автодополнение кода

Основной целью IntelliJ IDEA является продуктивность разработчика, 
и для этого она предоставляет мощные возможности автоматического дополнения
кода. Однако, так как есть несколько функций дополнения кода, важно 
разобраться как они работают и какую когда лучше использовать.


  1. Простое дополнение
    Простое дополнение предлагает самые примитивные предположения имен переменных, типов, методов, выражений и т.д. Стоит упомянуть что простое дополнение автоматически работает по мере ввода вами текста. Это значит, что вам не нужно нажимать никаких клавиатурных сочетаний для того чтобы увидеть список предлагаемых вариантов. Но если вам все-таки хочется вызвать его вручную — вы можете нажать Ctrl + пробел.



    Обратите внимание, если вы вызываете простое дополнение дважды, оно покажет вам больше вариантов, включая приватные члены.

  2. Умное дополнение
    В дополнение к простому дополнению, IntelliJ IDEA предоставляет Умное дополнение, гораздо более совершенное и всеобъемлющее. Умное дополнение разбирается в том какой тип ожидается и как происходит преобразование типов данных, и предлагает варианты подходящие к контексту. Для того чтобы запустить Умное дополнение, нажмите Shift + Ctrl + пробел.



    Обратите внимание, что если вы запустите Умное дополнение дважды, оно покажет вам больше результатов, включая цепочки и не импортированные статические члены.



  3. Дополнение по клавише Tab
    Если вы выберете элемент из списка предложенных вариантов нажав Tab, он перезапишет идентификатор на котором находится курсор, вместо того чтобы просто дописать этот вариант. Это бывает полезно если вы редактируете часть идентификатора, такую как имя файла.



  4. Дополнение операторов
    Дополнение операторов автоматически добавляет недостающие скобки (любые скобки, прим. перев.) и необходимое форматирование. Чтобы дополнить оператор, просто нажмите Shift + Ctrl + Enter (Shift + Cmd + Enter для Mac).



  5. Инверсия дополнения
    Если вы выберете булевый элемент из списка предложений, нажав !, то IntelliJ IDEA автоматически добавит оператор инверсии к результату.



  6. Срединное соответствие
    IntelliJ IDEA также поддерживает так называемое Срединное соответствие. Это значит, что вам не обязательно писать идентификатор с самого начала. К примеру, если вы помните только часть имени, напишите ее и IntelliJ IDEA все равно найдет вам правильный вариант.



  7. Информация о параметрах
    Если вам нужно видеть предположительные параметры для какого-то метода или конструктора, просто нажмите Ctrl + P (Cmd + P для Mac). IntelliJ IDEA покажет информацию по параметрам для каждого перегруженного метода или конструктора, и выделит цветом самое полное соответствие для тех параметров которые вы уже ввели. Это поможет вам выбрать среди перегруженных вариантов и сравнить ваш ввод с тем что ожидается.



  8. Быстрые всплывающие окна
    Есть несколько вариантов всплывающих окон — с документацией (по Ctrl + Q или Ctrl + J на Mac), или с определением (по Shift + Ctrl + I, или Shift + Cmd + I на Mac) доступных когда вы смотрите список вариантов дополнения кода.



  9. Убрать из дополнения
    Если вас достало что какой-то класс постоянно появляется в списке дополнения, IntelliJ IDEA может убрать этот класс или весь пакет и вы никогда не увидите его больше. Просто нажмите Alt + Enter на этом элементе и подтвердите удаление из списка. Включить его обратно вы можете в настройках Settings → Editor → Auto Import.



  10. Настройки дополнения
    Если вы хотите поменять настройки по умолчанию для дополнения кода, вы можете сделать это в Settings → Editor → Code Completion.



Оригинал статьи

9 комментариев

alexnjc
Иногда забываю про хоткеи, вот если бы видео найти на эту тему или поупражняться. Ну, все придет с практикой, спасибо за статью.
Razor
Оно само придёт, когда часто будешь ими пользоваться. Все их знать не обязательно.
saprys
Есть плагин который показывает шорткаты когда ты выполняешь действия мышкой, называется Key Promoter.
BeQuick
здесь пишут «Стоит упомянуть что простое дополнение автоматически работает по мере ввода вами текста»
подскажите пожалуйста как настроить что бы было так? (у меня автоматически не срабатывает простое уведомление по мере ввода текста...) Спасибо!
JGosling
подскажите можно ли сделать при автодополнении цикла for() что бы заготовка была бы как в visual studio — уже с объявлением (int i = 0; ...)?
Docktor91
  • Docktor91
  • +1
  • Комментарий отредактирован 2016-05-28 04:10:31 пользователем Docktor91
напиши fori и tab нажми
JGosling
огромное Спасссссибеще )
весь гугл перерыл, не мог найти
Docktor91
более того можно циклы подставлять к объектам
arr.for(fori)(помойму только если implements Iterable)
JGosling
еще один вопрос: как в help(e) "?" шрифт увеличить
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.