我需要從Class List中檢索最高值。然而,我從ArrayList中檢索數據時一直在使用Collections.max(list)
,但無法回想是否有任何類可以從Class List中做同樣的事情。Java中Collection對象的最大值
我有一個類:
public Class Emp{
private Integer empno;
private String empName;
private Float salary;
}
使用Spring - Hibernate的,我在List<Emp>
檢索整個表。
DAO代碼是:
public List<Emp> retriveAllEmp(){
return getSession().createQuery("from Emp");
}
注意:在實際應用中,數據是使用複雜的查詢插入的Emp類和後顯示給客戶機。
要求是獲得工資的最大值。
然而,這可以通過查詢或標準的Emp對象做過類似
Float maxSalary = getSession().createQuery("select max(salary) from Emp");
或通過運行在列表中循環。
但我們可以使用任何收集方法來做相同或任何其他替代方法嗎?
['Collections.max(收藏 extends T>科爾,比較 super T> COMP)'](http://docs.oracle.com/javase/7/docs /api/java/util/Collections.html#max(java.util.Collection,%20java.util.Comparator))需要一個'Collection',這意味着它也可以接受一個'List'和一個'Comparator'讓你找到「最大」。 ['Collections.max(Collection extends T> coll)'](http://docs.oracle.com/javase/7/docs/api/java/util/Collections.html#max(java.util.Collection))需要一個「集合」,其元素是「可比」,因此它們自己定義「最大」。因此你可以使用任一個。 – pickypg