在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 | 抑制“冗余的类型转换”的警告 |