引入变量
此重构允许创建新变量,通过选定的表达式进行初始化,并使用创建变量的引用替换原始表达式。这与内联变量相反。
执行重构
- 在代码编辑器中,将光标放置在要提取到变量的表达式上。
- 单击右键展示上下文菜单,选择“Ctrl+Alt+V”。 。或者按
- 如果多个表达式属于重构范围,请在弹窗中选择所需的表达式。
- 在打开的“引入变量”对话框中,提供引入变量的类型和名称,并选择重构选项:
- 选择变量是否应“声明为final”。
- 如果项目的语言级别设置为Java 10以及更高的版本,则可以选择使用var标识符来声明变量,而不是显式提供其类型,这有助于提高代码的可读性。
如下图所示:
图1 引入变量
- 单击“重构”以应用重构。
示例
例如,将表达式“Hello”+“ ”+“World!”提取到一个新的message变量中。
重构前
“com\refactoring\source\ExtractVariable.java”文件内容如下:
class ExtractVariable { public static void main(String[] args) { sayHello(); } private static void sayHello() { System.out.println("Hello" + " " + "World!"); } }
重构后
将 "Hello" + " " + "World!" 提取变量,提取后,“com\refactoring\source\ExtractVariable.java”文件内容如下:
class ExtractVariable { public static void main(String[] args) { sayHello(); } private static void sayHello() { String message = "Hello" + " " + "World!"; System.out.println(message); } }