Ответ 1
В Intellij Idea 2016.3 вы можете использовать option + return. Он спросит вас, хотите ли вы представить именованный аргумент для аргумента, в котором вы находитесь, и всех последователей.
Если у моего класса есть непустой конструктор, возможно ли автозаполнение параметров в выражении new
?
С Eclipse, если вы нажмете ctrl + space, когда курсор находится между круглой скобкой:
MyClass myObject = new MyClass();
найдут соответствующие параметры.
--> MyClass myObject = new MyClass(name, value);
Когда я использую ctrl + shift + spacebar после new
, Intellij показывает мне конструкторы, но я не могу выбрать один для автозаполнения. Мне не хватает опции?
В Intellij Idea 2016.3 вы можете использовать option + return. Он спросит вас, хотите ли вы представить именованный аргумент для аргумента, в котором вы находитесь, и всех последователей.
Обычно я начинаю с Ctrl P (действие " Parameter Info
), чтобы увидеть, какие аргументы приняты (автоматическое угадывание - это способ подверженности ошибкам, на мой взгляд). И если в вашем случае вы хотите ввести name
типа n
выпадающее меню появляется со всеми доступными переменными/полями (и т.д.), Начиная с n
Arrow Up/Down и Tab, чтобы выбрать имя, или Ctrl Space, чтобы выбрать метод (или даже Ctrl Alt Space быть убитым предложений ;-), а затем ,
и v
Tab для значения.
Ну, я использовал карту ключевых слов eclipse, где Информация о параметрах не назначена. Вот как это изменить:
Ну там комбинация Ctrl + Shift + Space, которая пытается создать набор возможных аргументов. И если вы нажмете Ctrl + Shift + Space во второй раз, Idea пытается найти аргументы, которые подходят для нескольких вызовов и преобразований.
Поэтому в вашем примере Ctrl + Shift + Space почти наверняка воссоздает "имя" как предложение. И следующее Ctrl + Shift + Space выведет "значение" в качестве предложения.
Пока нет такой возможности. Поскольку IDEA не заполняет аргументы автоматически, различение конструкторов в поиске не имеет смысла. Там просьба об этом (http://youtrack.jetbrains.net/issue/IDEABKL-5496), хотя я искренне верю, что такое поведение слишком опасно и подвержено ошибкам.