List排序

来源:互联网 发布:知乎空气质量检测仪 编辑:程序博客网 时间:2024/06/05 11:01

1.重写Collections.sort方法;

源码如下:

package com.dayang.common.util;

import java.util.Collections;
import java.util.Comparator;
import java.util.List;


import com.dayang.order.basic.hibernate.OrderItem;
import com.dayang.order.basic.hibernate.OrderItemDeleteRecord;


public class SortUtils {
public static void sortList(List list){
Collections.sort(list, new Comparator() {
@Override
public int compare(Object o1, Object o2) {
Object[] objarr1=(Object[])o1;
Object[] objarr2=(Object[])o2;
OrderItem item1=null;
OrderItem item2=null;
OrderItemDeleteRecord delItem1=null;
OrderItemDeleteRecord delItem2=null;
if(objarr1.length==3){
item1=(OrderItem)objarr1[0];
}else{
delItem1=(OrderItemDeleteRecord)objarr1[0];
}
if(objarr2.length==3){
item2=(OrderItem)objarr2[0];
}else{
delItem2=(OrderItemDeleteRecord)objarr2[0];
}
if(item1!=null){
if(item2!=null){
if(item1.getGroupId().compareTo(item2.getGroupId())!=0){
return item1.getGroupId().compareTo(item2.getGroupId());
}else{
return item1.getItemIndex().compareTo(item2.getItemIndex());
}

}else {
if(item1.getGroupId().compareTo(delItem2.getGroupId())!=0){
return item1.getGroupId().compareTo(delItem2.getGroupId());
}else{
return item1.getItemIndex().compareTo(delItem2.getItemIndex());
}
}
}else {
if(item2!=null){
if(delItem1.getGroupId().compareTo(item2.getGroupId())!=0){
return delItem1.getGroupId().compareTo(item2.getGroupId());
}else{
return delItem1.getItemIndex().compareTo(item2.getItemIndex());
}
}else{
if(delItem1.getGroupId().compareTo(delItem2.getGroupId())!=0){
return delItem1.getGroupId().compareTo(delItem2.getGroupId());
}else{
return delItem1.getItemIndex().compareTo(delItem2.getItemIndex());
}
}
}

}
});
}
}
0 0
原创粉丝点击