在Java程式碼中可以透過合理使用@SuppressWarnings註解可以抑制一些不合適的警告,這裡記錄一下用過的忽略型別
引數 | 作用 |
---|---|
all | 抑制“可替換為Lambda表示式”的警告 |
Convert2Lambda | 抑制“可替換為Lambda表示式”的警告 |
unused | 抑制“方法/欄位/屬性等從未使用”的警告 |
cast | 抑制“型別轉換”的警告 |
unchecked | 抑制“未經檢查的型別轉換”的警告 |
deprecation | 抑制“使用的方法已過時”的警告 |
fallthrough | 抑制“流程控制語句沒有break”的警告 |
null | 抑制“與null值的操作”相關的警告 |
finally | 抑制“finally程式碼塊可能不會執行”的警告 |
有一些警告並不是Java提出來的,而是程式碼編輯器提出來的,例如方法呼叫 'xxx' 可能生成 'NullPointerException'
的警告使用null
並不會實現抑制警告的效果,這個警告是IDEA的條件表示式的靜態分析產生的警告,所以針對IDEA有一些專屬的抑制警告的引數
引數 | 作用 |
---|---|
ConstantConditions | 抑制“斷言、條件表示式靜態分析”的警告 |
DuplicateBranchesInSwitch | 抑制“switch語句出現重複分支”的警告 |
RedundantCast | 抑制“冗餘的型別轉換”的警告 |