Les assistants rapides effectuent des transformations de code locales. Ils sont invoqués par sélection ou par curseur uniquedans l'éditeur Java et utilisent le même raccourci que celui utilisé pour les correctifs rapides (Ctrl +1), mais sont généralement masqués lorsqu'il existe une erreur.
Une sélection d'assistants rapides peut être affectée à un raccourci direct. Par défaut, les raccourcis sont les suivants :
Affectez plus de raccourcis ou modifiez les raccourcis par défaut sur la page de préférence Touches.
La page de préférences de l'éditeur Java comprend une ampoule d'assistant rapide que vous pouvez activer en cas de besoin.
Nom | Exemple de code | Emplacement d'appel | ||
---|---|---|---|---|
Inverser une instruction if | if (x) a(); else b(); |
> | if (!x) b(); else a(); |
sur des instructions 'if' avec un bloc 'else' |
Inverser une expression booléenne | a &&
!b |
> | !a || b |
sur une expression booléenne |
Supprimer les parenthèses supplémentaires | if ((a == b)
&& (c != d) {} |
> | if (a == b && c !=
d) {} |
sur des expressions sélectionnées |
Ajouter des parenthèses 'paranoïdales' | if (a == b
&& c != d) {} |
> | if ((a == b) && (c != d) |
sur des expressions sélectionnées |
Joindre des instructions if imbriquées | if (a) { if
(b) {} } |
> | if (a && b) {} |
sur une instruction if imbriquée |
Permuter les instructions if imbriquées | if (a) { if
(b) {} } |
> | if (b) { if (a) {} } |
sur une instruction if imbriquée |
Fractionner une instruction if avec une expression and'ed | if (a
&& b) {} |
> | if (a) { if (b) {} } |
sur une expression and'ed dans un 'if' |
Fractionner une instruction if avec une expression or'd | if (a || b)
x(); |
> | if (a) x(); if (b) x(); |
sur une expression or'd dans un 'if' |
Inverser l'expression conditionnelle | x ? b : c |
> | !x ? c : b |
sur une expression conditionnelle |
Décaler la négation vers l'amont | b && c |
> | !(!b || !c) |
Sur un expression booléenne |
Décaler la négation en aval | !(b
&& c) |
> | !b || !c |
Sur une expression booléenne inversée |
Affectation If-else à une expression conditionnelle | if (a) x= 1;
else x= 2; |
> | x= a ? 1 : 2; |
sur une instruction 'if' |
renvoi If-else à une expression conditionnelle | if (a) return
1; |
> | return a ? 1 : 2; |
sur une instruction 'if' |
Affectation d'une expression conditionnelle à If-else | x= a ? 1 : 2; |
> | if (a) x= 1; else x= 2; |
sur une expression conditionnelle |
Renvoi d'une expression conditionnelle à If-else | return
a ? 1 : 2; |
> | if (a) return 1; else return 2; |
sur une expression conditionnelle |
Passer à If-else | switch (kind) {
|
> | if (kind == 1) {
|
Sur une instruction Switch |
Permuter les opérandes | a + b
|
> | b + a |
sur une opération infix |
Transtyper et affecter | if (obj
instanceof Vector) { |
> | if (obj instanceof Vector) { } |
sur une instance d'expression dans une instruction if ou while |
Extraire une chaîne | "abcdefgh" |
> | "abc" + "de" + "fgh" |
sélection litérale d'une partie d'une chaîne |
Fractionner une variable | int i= 0;
|
> | int i; i= 0; |
sur une variable avec initialisation |
Joindre une variable | int i; i= 0; |
> | int i= 0 |
sur une variable sans initialisation |
Affecter une variable | foo()
|
> | X x= foo(); |
sur une instruction d'expression |
Extraire vers local | foo(getColor()); |
> | Color color= getColor();
|
Sur une expression |
Affecter un paramètre à un champ | public A(int
color) {}
|
> | Color fColor; |
sur un paramètre |
Ajouter un bloc finally | try { |
> | try { |
sur une instruction try/catch |
Ajouter un bloc else | if (a) b();
|
> | if (a) b(); else { } |
sur une instruction if |
Remplacer une instruction par un bloc | f (a) b();
|
> | if (a) { b(); } |
sur une instruction if |
Inverser l'égalité | a.equals(b)
|
> | b.equals(a) |
sur un appel de 'equals' |
Initialiseur de tableau en création de tableau | int[]
i= { 1, 2, 3 } |
> | int[] i= new int[] { 1, 2, 3 } |
sur un initialiseur de tableau |
Convertir en 'enhanced for loop' (J2SE 5.0) | for (Iterator
i= c.iterator();i.hasNext();) { |
> | for (x : c) { |
sur une boucle for |
Créer une méthode en super classe |
|
|
sur une déclaration de méthode | |
Ouvrir des blocs | { a() }
|
> | a() |
sur des blocs, instructions if/while/for |
Renommer dans un fichier |
|
|
sur des identifiants |