2016-11-15 357 views
0

假设我有几个参数的方法:如何在Intellij IDEA的调用方法中创建默认局部变量?

void myMethod(String param, Integer count, Boolean fun, Object object) { 
    ... 
} 

现在我把我的方法

myMethod(param, count, fun, object); 

而且很显然,我需要初始化我基本上还不存在局部变量。假设我想对每个变量做一些预处理,因此我需要将它们中的每一个都提取为局部变量。

问题:如何通过一次点击/快捷方式创建具有正确类型甚至默认值的局部变量?

可能的解决办法:现在我发现只有可能来与光标到每个变量,创建一个本地出来的,但如果我有一个方法具有更多参数的它给人更多的麻烦。

+0

功能要求我使用Alt + Enter键将通过屏幕上的所有错误,无需移动光标。 –

+0

我可以问一下,为什么你需要这种逆向过程?有更多的主要问题吗? :)) –

+0

@PeterLawrey,有趣的,但我没有注意到这对我工作。 – Rufi

回答

1

现在是不可能的。

我明白你的问题,但说实话,这对我来说并不是什么事情:通常一些/许多参数已经作为范围内的变量可用。所以Alt-Enter几次都不会让我感到困扰。

另外我认为这会让我很难同时处理多个引入的变量。我喜欢连续的工作流程,可以让我一次考虑一个参数。

你总是可以创建在https://youtrack.jetbrains.com/issues/IDEA

0

对于默认参数,可以你可以覆盖的方法,并调用默认PARAM该方法与it.For例子,你的方法声明是这样的:

public void myMethod(String param, Integer count, Boolean fun, Object object) { 
    System.out.println(String.format("1:%s, 2:%d, 3:%s, 4:%s", param, count, fun, object)); 
} 

,你想离开默认的第二个和第四个参数,您可以覆盖这样的方法:

public void myMethod(String param, Boolean fun) { 
    myMethod(param, 0, fun, null); 
} 

,他们被称为是这样的:

myMethod("abc", 123, true, "xyz"); 
myMethod("abc", true); 

这里是结果:

1:abc, 2:123, 3:true, 4:xyz 
1:abc, 2:0, 3:true, 4:null 
+0

看来你没有得到我的问题。我要问的是,我想要在Intellij IDEA中根据方法调用创建局部变量,其中局部变量未定义,并初始化,这意味着它们将被突出显示。所以,问题更多的是关于IDE而不是语言。 – Rufi

相关问题