Как исправить автозаполнение параметра метода IntelliJ IDEA?
Я использую IntelliJ IDEA 15, и я заметил, что (по умолчанию) Eclipse предлагает гораздо более удобное автозаполнение, когда дело доходит до написания вызовов методов, которые требуют нескольких параметров.
Eclipse автоматически заполняет параметры по умолчанию и позволяет быстро перемещаться по ним, нажимая Tab:
![введите описание изображения здесь]()
Однако IntelliJ IDEA не справляется с этим как удобно и заставляет вас писать их вручную:
![введите описание изображения здесь]()
Есть ли способ сделать IntelliJ IDEA, обработать метод автоматического завершения вызова так же, как и Eclipse, и предварительно записать все параметры для вас, просто нажав Tab (или другой ключ) для навигации по ним? Если это невозможно в оригинальном IntelliJ, есть ли добавочный/плагин/внешний инструмент, который улучшит выполнение интеллектуального кода в таких случаях?
Примечание. Я не ленив, это просто раздражает, нужно вручную выполнить каждый параметр и поместить запятую после каждого, когда завершение кода должно сделать это за вас.
Ответы
Ответ 1
IntelliJ не делает этого, и AFAIK для него нет плагина.
Для вас нет решения (если вы сами не создали плагин, но тогда у вас будет другая работа для поддержки этого плагина)
Альтернативой является разорвать привычку/потребность в ней и использовать ярлыки завершения кода IntelliJ:
- Ctrl + P для просмотра возможных параметров для функции.
- Ctrl + Shift + Space, чтобы указать возможные переменные, которые могут быть введены в качестве параметра в соответствующей позиции параметра (в зависимости от типа).
Это также входит в запятую, если для функции требуется другой параметр.
Номера/строки жесткого кодирования в качестве параметров для настраиваемой функции не рекомендуется, так как это отрицает точку параметров. Это более практичная практика и более распространенная в предопределенной переменной; В какой момент Ctrl + Shift + Space является самым простым способом для завершения кода.
Это также помешает вам закрыть цитаты и добавить запятые.
Также обратите внимание: IntelliSense - это реализация Microsoft Intelligent Code Completion, которую не используют ни IntelliJ, ни Eclipse.
Как говорится в сообщении frant.hartm:
К сожалению, мнение разработчиков Intellij заключается в том, что эта функция будет слишком подвержена ошибкам. Посмотрите эту проблему на youtrack.
Они даже заявляют, что люди могут сделать плагин, который делает это.
Ответ 2
Самое близкое к этому AFAIK - это "завершение параметра метода", которое позволяет автоматически заполнять параметры текущего метода в качестве параметров вызова внутреннего метода сразу (работает для методов и конструкторов при вызове super()).
![завершение параметра метода]()
К сожалению, мнение разработчиков Intellij заключается в том, что эта функция будет слишком подвержена ошибкам. См. эта проблема на youtrack.
Ответ 3
IDEA не заполняет аргументы автоматически. Вы можете использовать Ctrl+Shift+Space
для автозаполнения (завершение основано на типе, а не на имени) или Ctrl+Alt+Space
для предложения. Или Ctrl+P
, чтобы увидеть, какие аргументы приняты.
Ответ 4
Попробуйте
Ctrl + Space
для
Завершение базового кода
И как ранее было написано
Ctrl + Shift + Space
для
Заполнение кода кода
или попробуйте второй вариант TWICE. Подробнее о Автозаполняющем коде в здесь