1. 程式人生 > >按照列表中的某個欄位的屬性進行排序

按照列表中的某個欄位的屬性進行排序

java開發中時常遇到排序的問題。尤其是遇到針對某個bo,po之類的實體bean屬性的值進行排序是就要使用Collections這個工具類,就顯得格外方便。

/**
  * @decription:對列表進行排序
  * @param args
  */
 public static void main(String[] args) {
  List<WaterMamBgalarminfo> listForCompare = new ArrayList<WaterMamBgalarminfo>();
  WaterMamBgalarminfo po1 = new WaterMamBgalarminfo();
  WaterMamBgalarminfo po2 = new WaterMamBgalarminfo();
  WaterMamBgalarminfo po3 = new WaterMamBgalarminfo();
  WaterMamBgalarminfo po4 = new WaterMamBgalarminfo();
  po1.setQkalarminfoid(new Integer(6));
  po2.setQkalarminfoid(new Integer(4));
  po3.setQkalarminfoid(new Integer(5));
  po4.setQkalarminfoid(new Integer(7));
  listForCompare.add(po1);
  listForCompare.add(po2);
  listForCompare.add(po3);
  listForCompare.add(po4);
  comPare(listForCompare);
  for(WaterMamBgalarminfo po:listForCompare){
   System.out.println(po.getQkalarminfoid());
  }
 }
 static void comPare(List list){
  Collections.sort(list, new Comparator<WaterMamBgalarminfo>() {
   @Override
   public int compare(WaterMamBgalarminfo o1, WaterMamBgalarminfo o2) {
    return o1.getQkalarminfoid()-o2.getQkalarminfoid();
   }
  });
 }
}