Java泛型问题,在编译时,提示警告: 需要: List 找到: List
天蓬老师
天蓬老师 2017-04-18 09:12:53
0
2
498

错误提示:
++++++++++
警告: [unchecked] 方法调用未经过检查: 将类 Collections中的方法 s
ort应用到给定的类型

Collections.sort(books); ^

需要: List
找到: List
其中, T是类型变量:

T扩展已在方法 sort(List)中声明的Comparable

1 个警告
++++++++++

下面是源代码:

public Collection getBooks()throws Exception{ Connection con=null; PreparedStatement prepStmt=null; ResultSet rs =null; List books = new ArrayList(); try { con=getConnection(); String selectStatement = "select * " + "from BOOKS"; prepStmt = con.prepareStatement(selectStatement); rs = prepStmt.executeQuery(); while (rs.next()) { BookDetails bd = new BookDetails(rs.getString(1), rs.getString(2), rs.getString(3), rs.getFloat(4), rs.getInt(5), rs.getString(6),rs.getInt(7)); books.add(bd); } }finally{ closeResultSet(rs); closePrepStmt(prepStmt); closeConnection(con); } Collections.sort(books); // 出现警告的地方 return books; }

问题: 这是什么原因?T不是只是一个类型符号吗?为什么必须要找到List?

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

모든 응답 (2)
PHPzhong
public static > void sort(List list) { Object[] a = list.toArray(); Arrays.sort(a); ListIterator i = list.listIterator(); for (int j=0; j

需要注意这里:T extends Comparable

    Peter_Zhu

    应该是你java版本过低。java1.5以上版本支持@SuppressWarning注解

      최신 다운로드
      더>
      웹 효과
      웹사이트 소스 코드
      웹사이트 자료
      프론트엔드 템플릿
      회사 소개 부인 성명 Sitemap
      PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!