我有这个代码:
List<Book> bookList = session.createCriteria(Book.class)
.add(Restrictions.like("name", "%i%")).list();
但是,我有一个通知说:“类型安全:List类型的表达式需要未经检查的转换才能符合List”
我如何修复我的代码以删除此警告?
将其添加到该行上方或方法标题的顶部:
@SuppressWarnings("unchecked")
List<Book> bookList = session.createCriteria(Book.class)
.add(Restrictions.like("name", "%i%")).list();
或者对于整个方法:
@SuppressWarnings("unchecked")
public void doSomething(){
如果 list() 是您自己的实现,您可以像这样定义结果:
private List<Book> list(){
return new ArrayList<Book>();
}
那么注释
是不必要的,并且您有一个由编译器控制的检查转换
。
我是一名优秀的程序员,十分优秀!