2014-02-19 78 views
3

我想對Java項目運行某些檢查。我發現這個檢測在編輯窗口中實時工作。但是當我使用「分析 - >按名稱運行檢查」時,我找不到這個檢查。實際上有一個名字相同,但它是用於JavaScript的(儘管如此,不像預期的那樣工作)。任何人都可以告訴我需要檢查的確切名稱,或者教我如何弄清楚?IntelliJ IDEA:什麼是'不必要的局部變量'檢查名稱?

這裏的代碼示例:

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,然後按右箭頭鍵並選擇「運行檢查」。 enter image description here 這是工作,但仍然不清楚如何通過「分析 - >運行檢查名稱」運行相同的檢查

+1

提供相關的代碼,請。 –

+0

@EelLee完成! :-) –

回答

0

這是由引起一個bug,將其固定在IntelliJ IDEA的14

0

它被稱爲「未使用的局部變量」。

編輯:這是「多餘的局部變量」您正在尋找呢?

+0

不,未使用的局部變量與可以內聯的冗餘變量有所不同,就像在這種情況下一樣。 – trappski

+0

我同意。也沒有檢查這個名字。 –

+0

是的,我認爲這實際上是冗餘的局部變量檢查? –

2

我得到的「局部變量‘i’是多餘的信息」(和「黃色」的分析)當我輸入驗證碼

public int testMe() 
{ 
    int i = 5; // The 'i' is highlighted 
    return i; 
} 

我可以禁止這種警告(並獲得了「綠色」分析,沒有警告),通過添加這個註釋:

@SuppressWarnings("UnnecessaryLocalVariable") 
public int testMe() 
{ 
    int i = 5; 
    return i; 
} 

嘗試「冗餘局部變量」。根據this list of suppress warnings arguments,這似乎是符合註釋的描述。

 
Warning Description   Warning Name 
Redundant local variable UnnecessaryLocalVariable 
+0

查看我的評論Eel Lee的回答 –

2

在我的IntelliJ IDEA 12.1.5中,我認爲它叫Redundant local variable

x因爲你沒有使用該變量的任何地方在該範圍內,除了返回它是多餘的。而且,這樣的代碼

Integer x = 5; 
return x; 

可以簡化爲

return 5; 

但要避免「幻數」像return 5;,你可以把它分配給類常量(private static final Integer X = 5;

+0

這只是一個測試樣本,我沒有真正的代碼中的幻數;)。檢查IDEA 12.1.6中的「冗餘局部變量」僅適用於JavaScript。我可以看到它,如果按下Ctrl + Alt + Shift + I,並且右側有小JS圖標。我也試圖運行它,它完全忽略了Java代碼。 –

相關問題