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


172

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

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".


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.


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!


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



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) {}
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.