@SuppressWarnings("unchecked") 该批注的作用是给编译器一条指令,告诉它对被批注的代码元素内部的某些警告保持静默。
关键字 用途
deprecation 使用了不赞成使用的类或方法时的警告
unchecked 执行了未检查的转换时的警告,例如当使用集合时没有用泛型 (Generics) 来指定集合保存的类型。
fallthrough 当 Switch 程序块直接通往下一种情况而没有 Break 时的警告。
path 在类路径、源文件路径等中有不存在的路径时的警告。
serial 当在可序列化的类上缺少 serialVersionUID 定义时的警告。
finally 任何 finally 子句不能正常完成时的警告。
all 关于以上所有情况的警告。
@SuppressWarnings 批注允许您选择性地取消特定代码段(即,类或方法)中的警告。其中的想法是当您看到警告时,您将调查它,如果您确定它不是问题,您就可以添加一个 @SuppressWarnings 批注,以使您不会再看到警告。虽然它听起来似乎会屏蔽潜在的错误,但实际上它将提高代码安全性,因为它将防止您对警告无动于衷 — 您看到的每一个警告都将值得注意。
例如
@SuppressWarnings("unchecked")
public Map getPendingStrXML(String startTime) throws DataAccessException{
// 返回的待办字符串
Map mapPendingXml = new HashMap();
// 待办拼装的省份String
StringBuffer strXml = new StringBuffer();
// 待办拼装的总部待办String
StringBuffer strHqXml = new StringBuffer();
// 省份待办存在标识位
boolean bpv = false;
// 总部待办存在标识位
//.........