2011-01-27 13 views
54

Si mi clase tiene un constructor no vacío, ¿es posible autocompletar los parámetros en la expresión new?¿Puede IntelliJ autocompletar los parámetros del constructor en la expresión "nueva"?

Con Eclipse, si pulsa ctrl +espacio cuando el cursor se sitúa entre el paréntesis:

MyClass myObject = new MyClass(); 

encontrará los parámetros adecuados.

--> MyClass myObject = new MyClass(name, value); 

Cuando uso ctrl +cambio + barra espaciadora después de la new, IntelliJ me muestra los constructores, pero no puedo elegir uno para la terminación automática. ¿Me estoy perdiendo una opción?

+0

Podría usted reformular su pregunta.Es confuso. No sé a qué te refieres. – sandalone

Respuesta

2

En IntelliJ IDEA 2.016,3 puede utilizar opción + retorno. Le preguntará si desea introducir el argumento nombrado para el argumento en el que se encuentra y todos los seguidores.

enter image description here

+1

Eso no funciona para mí. ¿Es específico para un cierto idioma? – Adam

+0

He probado en Scala y Mac OSX, no estoy seguro sobre otros idiomas/entorno. –

+0

No funciona para Java en MacOS. Cmd + P funciona. –

2

No hay tal posibilidad todavía. Como IDEA no llena los argumentos automáticamente, distinguir los constructores en la búsqueda no tiene sentido. Hay una solicitud para eso (http://youtrack.jetbrains.net/issue/IDEABKL-5496) aunque sinceramente creo que tal comportamiento es demasiado peligroso y propenso a errores.

+1

Ctrl + P, información del parámetro (dentro de los argumentos de la llamada al método). – user7610

+7

No estoy de acuerdo, ¿por qué sería tan peligroso que un usuario podría al menos optar por habilitarlo? Es una función muy útil y probablemente fácil de implementar, por lo que no veo el valor de no implementar esta característica. – quantum

+0

Siempre es divertido cuando un vendedor quiere decirme qué es un comportamiento de desarrollo bueno o malo. Y tiene mucho sentido, porque cuando creo una clase, necesito elegir qué ctor usar. De lo contrario, los ctors no tendrían sentido. – Bevor

9

Bien, está la combinación Ctrl + Shift + Espacio, que intenta crear un conjunto de posibles argumentos. Y si presiona Ctrl + Shift + Space una segunda vez, Idea intenta encontrar argumentos que se ajusten a múltiples llamadas & conversiones.

Por lo tanto, en su ejemplo, Ctrl + Shift + Space casi con seguridad mostrará el 'nombre' como sugerencia. Y la siguiente Ctrl + Ship + Space mostraría 'valor' como sugerencia.

+0

gracias por el truco! – Loic

97

por lo general comienzo con CtrlP para ver qué argumentos son aceptados (automático supongo completa es manera de propenso a errores en mi opinión). Y si, como en el caso de que desee rellenar name tipo n un menú desplegable aparece con todas las variables/campos disponibles (etc) a partir de nFlecha Arriba/Abajo y Tab para seleccionar el nombre, o CtrlEspacial para seleccionar un método (o incluso Ctrl Alt espacio a ser matado por sugerencias ;-), seguido de , y vTab para el valor.

+11

Estaba buscando esta característica: Ctrl + P. ¡Gracias! –

+11

Como referencia, con los enlaces de teclas OS X esto es ⌘P y el nombre de la funcionalidad es "información de parámetros" (de Ver> Información de parámetros). –

11

Bueno utilicé el mapa de teclas de eclipse donde Parámetro Información no está asignado. Aquí es cómo cambiar eso:

enter image description here

Cuestiones relacionadas