java如何對不同的類別物件進行排序
学习ing
学习ing 2017-06-14 10:52:58
0
3
872

假設兩個類別A,B有共同的屬性date,我要對兩個List<A>, List<B>, 依照date進行排序,怎麼做比較好?

我知道的方法是寫一個基類,然後A和B繼承這個基類,然後再調用Collections.sort()排序.

請問有沒有更好的辦法,或是用反射寫一個類似的方法?亦或是有現成的函式庫可以使用?

学习ing
学习ing

全部回覆(3)
Peter_Zhu

使用上面你說的是較好的方法,1.可以利用java本身提供的api減少了程式碼量,2.上面的方式在程式碼風格上也蠻好的。
還有一個想法是
將每A,B類的date提出來並與A,B物件本身建立關聯,例如實作一個類別Index,Index中有兩個屬性,date和A,B類物件的引用或者id,每個A,B類對象關聯一個Index對象,然後對Index對象排序,然後透過id找到對應A或B的對象,同index對像一樣的順序,即排好序。

学霸

雷雷

typecho
  1. 弄一個Base Class,A、B extends之

  2. 弄一個Interface,A、B implements之

  3. 弄一個List,然後sort之,Comparator裡面需要強轉型

  4. 弄一個Wrapper class,包裝A、B,然後放在List中,sort之

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板