我目前压制了 eclipse 关于在这个片段中使用原始类型的唠叨
@SuppressWarnings({ "rawtypes" })
List doSomething(Integer arg1, ...) {
....
}
我实际上正在返回List
从旧版本的 Hibernate 生成的原始类型。有没有办法改变这个API返回:
List<Object[]>
我只是将列表投射到上面吗?
您可以将方法签名更改为:
List<Object> doSomething(Integer arg1, ...) {
....
}
对任何呼叫客户都没有负面影响。当然,这只是消除了@SuppressWarnings
在该方法本身上使用注释的需要。对于您必须在使用List
该类的原始版本的代码的其他部分中获得的所有警告,它没有任何作用。
您通常可以将 raw 替换List
为List<?>
.
如果您明确知道这些项目是Object[]
,您可以简单地施放
List<Object[]> doSomething(Integer arg1, ...) {
List rawList = ...
@SuppressWarnings("unchecked")
List<Object[]> cookedList = (List<Object[]>)rawList;
return cookedList;
}