Intellij IDEA generiert für jede / für Tastaturkürzel

172

Gibt es eine Tastenkombination, die eine foreach- und auch eine for-Schleife generiert?

Gleiten
quelle

Antworten:

316

Sie können 'Live-Vorlagen' verwenden, um verschiedene Arten von Code-Snippets zu generieren. Die Schleifeniteration erfolgt wie folgt:

iter    Iterate (for each..in) 
itin    Iterate (for..in) 
itli    Iterate over a List
itar    Iterate elements of array 
ritar   Iterate elements of array in reverse order 

Es gibt wahrscheinlich noch viele weitere. Suchen Sie einfach in der Hilfedokumentation nach "Live-Vorlagen".

d-live
quelle
1
Auch Checkout Postfix Abschluss, zB stackoverflow.com/a/40020608/109795
Tom
133

Durch Drücken von Ctrl+ Jwird die Liste der Live-Vorlagen in Ihrem Codekontext geöffnet. Geben Sie dann 'itin' ein.

TroyJ
quelle
Ich verwende das IdeaVim-Plugin auf einem Mac. Ich musste Strg + Alt + Umschalt + J drücken, um Live-Vorlagen auszulösen.
user674669
29

Zusätzlich zu anderen Antworten müssen Sie nicht einmal Strg + J verwenden (aber gut, um zu überprüfen, welche Möglichkeiten Sie haben.) Starten Sie einfach die Eingabe und drücken Sie die Eingabetaste:

Foreach: Geben Sie " iter " ein und drücken Sie die Eingabetaste.

Für Schleife: Geben Sie " fori " ein und drücken Sie die Eingabetaste.

Idea erkennt den Kontext und schlägt die wahrscheinlichste Variable vor, die durchlaufen werden soll. Wenn Ihnen die angegebenen Optionen gefallen, drücken Sie einfach die Eingabetaste!

BlondCode
quelle
19

Schauen Sie sich natürlich in der Hilfe die Standard-Keymap-Referenzen an. Geben Sie eine der folgenden Optionen ein und klicken Sie auf "Tab":

iter Iteration according to Java SDK 1.5 style
inst Check object type with instanceof and downcast it
itco Iterate elements of java.util.Collection
itit Iterate elements of java.util.Iterator
itli Iterate elements of java.util.List
Duffymo
quelle
2

Sie können auch Postfix Completion verwenden. Drücken Sie Ctrl+ Alt+ S, um die Einstellungen zu öffnen. Beispielsweise:

int[] list = {1, 2, 3};    
list.for -> for(int i : list) {}
Zizou
quelle