Java IntelliJ IDEA:什么是';不必要的局部变量';检验名称?
我想对Java项目进行某些检查。我看到这个检查在编辑窗口中实时工作。但是当我使用“分析->按名称运行检验”时,我找不到该检验。实际上,有一个名称相同,但它是用于JavaScript的(尽管尝试过,但没有像预期的那样工作)。谁能告诉我我需要的检查的确切名称或教我如何解决 下面是代码示例:Java IntelliJ IDEA:什么是';不必要的局部变量';检验名称?,java,intellij-idea,inspection,code-inspection,Java,Intellij Idea,Inspection,Code Inspection,我想对Java项目进行某些检查。我看到这个检查在编辑窗口中实时工作。但是当我使用“分析->按名称运行检验”时,我找不到该检验。实际上,有一个名称相同,但它是用于JavaScript的(尽管尝试过,但没有像预期的那样工作)。谁能告诉我我需要的检查的确切名称或教我如何解决 下面是代码示例: private Integer getInteger(){ //x on the line below will be highlighted by inspection saying // "L
private Integer getInteger(){
//x on the line below will be highlighted by inspection saying
// "Local variable 'x' is redundant more... (Ctrl+F1)"
Integer x = 5;
return x;
}
更新:我设法使用变通方法启动了所需的检查。我创建了如上所述的测试用例,然后在突出显示的区域按Alt+Enter,然后按右箭头键并选择“运行检查”。
这是可行的,但仍然不清楚如何通过“分析->按名称运行检查”运行相同的检查。当我键入以下代码时,我收到“局部变量“I”是冗余消息”(以及“黄色”分析):
public int testMe()
{
int i = 5; // The 'i' is highlighted
return i;
}
我可以通过添加以下注释来抑制此警告(并获得“绿色”分析,无警告):
@SuppressWarnings("UnnecessaryLocalVariable")
public int testMe()
{
int i = 5;
return i;
}
尝试“冗余局部变量”。据介绍,这似乎是与注释相匹配的描述
警告说明警告名称
冗余局部变量不必要的局部变量
在我的IntelliJ IDEA 12.1.5中,我认为它被称为
冗余局部变量
您的x
是多余的,因为除了返回变量外,您没有在该范围内的任何地方使用该变量。所以那个代码
Integer x = 5;
return x;
可以简化为
return 5;
但要避免像
return5这样的“幻数”
您可以将其分配给类常量(私有静态最终整数X=5;
)这是由a引起的,在IntelliJ IDEA 14中已修复。请提供相关代码。这只是一个测试示例,我的真实代码中没有幻数;)。IDEA 12.1.6中的检查“冗余局部变量”仅适用于JavaScript。我可以看到,如果按下Ctrl+Alt+Shift+I,右边有一个小JS图标。我也试着运行它,但它完全忽略了Java代码
return 5;