Is there a keyboard shortcut generating a foreach and also for loop?
问题:
回答1:
you can use 'live templates' to generate several types of code snippets, loop iteration is done by following -
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
There are probably many more, just lookup 'Live Templates' in help documentation.
回答2:
Pressing Ctrl+J opens the list of live templates within your code context. Then type 'itin'.
回答3:
Of course, have a look in the help at the default keymap references. Type one of the following and hit "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
回答4:
Aditionally to other answers, you don't even have to use Ctrl + J (but nice for checking what are your possibilities..) Just start type and press Enter:
Foreach: type "iter" then press Enter.
For loop: type "fori" then press Enter.
Idea will recognize the context and suggest the most likely var to iter through, if you like the given options, just press Enters!
回答5:
Create for loop from an existing list statement:
- Highlight the list
- Cmd+Alt+J or Ctrl+Alt+J
- Choose Iterate Iterable from the dropdown (i)
https://www.jetbrains.com/phpstorm/help/creating-code-constructs-using-surround-templates.html
回答6:
You can also use Surround with!
Mac : Command+Option+T
Windows : Ctrl+Alt+T
https://www.jetbrains.com/phpstorm/webhelp/surrounding-blocks-of-code-with-language-constructs.html
There is also plenty of live templates in the internet ! you can just google it.
回答7:
You can use Postfix Completion too. Press Ctrl + Alt + S to open the Settings. For example:
int[] list = {1, 2, 3};
list.for -> for(int i : list) {}