您的位置:首页 > 编程语言 > Java开发

java list 排序

2015-07-21 15:14 375 查看
之前看到过list排序,后来忘记了,这次记录下来方便自己今后查询。


方法一,简单的list比较排序。

List<VO> lists = new ArrayList<VO>();

Collections.sort(lists, new Comparator<VO>() {

@Override

public int compare(VO o1, VO o2) {

return o1.getOrder().compareTo(o2.getOrder());

}

});

public class Test_list_order {

public static void main(String[] args) {

List<Integer> list = new ArrayList<Integer>();
list.add(1);
list.add(4);
list.add(9);
list.add(3);
list.add(2);
list.add(11);

Collections.sort(list);

for (Integer i : list) {
System.out.println(i);
}
}
}

实例:

class CorporateVO(){

private String siteOrder;

private String code;

}

public static void main(String[] args) {

// TODO Auto-generated method stub

List<CorporateVO> lists = new ArrayList<CorporateVO>();

CorporateVO vo = new CorporateVO();

vo.setSiteOrder("1");

vo.setCode("222");

lists.add(vo);

CorporateVO vo1 = new CorporateVO();

vo1.setSiteOrder("1");

vo1.setCode("223");

lists.add(vo1);

CorporateVO vo2 = new CorporateVO();

vo2.setSiteOrder("1");

vo2.setCode("221");

lists.add(vo2);

CorporateVO vo3 = new CorporateVO();

vo3.setSiteOrder("2");

vo3.setCode("22");

lists.add(vo3);

CorporateVO vo4 = new CorporateVO();

vo4.setSiteOrder("3");

vo4.setCode("2");

lists.add(vo4);

Collections.sort(lists, new Comparator<CorporateVO>() {

@Override

public int compare(CorporateVO o1, CorporateVO o2) {

if(o1.getSiteOrder().equals(o2.getSiteOrder())){

return o1.getCode().compareTo(o2.getCode());

}

return o1.getSiteOrder().compareTo(o2.getSiteOrder());

}

});

for(CorporateVO v : lists){

System.out.println(v.getSiteOrder() + "------" + v.getCode());

}

}

输出结果:

1------221

1------222

1------223

2------22

3------2
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: