IDEA: “Assign statement to new local variable”?

笑着哭i 提交于 2019-11-29 02:14:03

问题


As a long time Eclipse user, I'm playing around a little bit with IntelliJ IDEA 10. I can't seem to find out how to perform an "Assign statement to new local variable" code completion.

Feature explanation:

I type something like

new BufferedOutputStream(out)

and then hit Cmd (or Ctrl)+1 and enter, and Eclipse changes the line into:

BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(out);

At the same time, I can type over "bufferedOutputStream" immediately to rename it (or select from the options "bufferedOutputStream", "outputStream" and "stream" from a dropdown).

I use this feature for absolutely every assignment, and it's an enormous time saver - this must be available in IDEA, too - but where is it hidden?


回答1:


Refactor | Introduce Variable (Ctrl+Alt+V on Windows). Note that you don't need to select the text if it's the only text in the current line. Then you can change the variable name in-line just like you've described and press Enter to complete editing.

Another way is to use the Postfix Completion:

Type .var (or just .v to select it from the list) and confirm it with Enter.




回答2:


As CrazyCoder mentions you can use Ctrl+Alt+V. Also instead of selecting the expression, clicking into somewhere in your expression and using Ctrl+W to expand scope is very useful while using introduce refactorings. Extract refactorings are:

  • Extract variable: Ctrl+Alt+V
  • Extract field: Ctrl+Alt+F
  • Extract method: Ctrl+Alt+M
  • Extract parameter: Ctrl+Alt+P
  • Extract constant: Ctrl+Alt+C

Also, Idea is a polygot editor so you can use these extract refactorings for other file types like js or html also (not all refactorings work in all file types but Ctrl+W works mostly).

There are more extract refactorings which do not have shortcuts which you can access from Refactor|Extract menu (both menu bar and context menu). To quick access all refactorings you can use Ctrl+Alt+Shift+T for a popup menu.

As a last word, I highly encourage you using "Tip of the Day" (Help|Tip of the Day). It is a fast way to learn many helpful features of Idea.




回答3:


It's not as nice as Eclipse, but you can try the following:

new BufferedOutputStream(out)
  • Select the expression above, either with your mouse (or by using Ctrl+W).
  • Then hit Ctrl+Alt+V to Introduce a Variable or (Ctrl+Alt+F to Introduce a Field)


来源:https://stackoverflow.com/questions/4816069/idea-assign-statement-to-new-local-variable

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!