两种排序方法
private static void ListSort(LinkedList<McssLog> list) {
Collections.sort(list,new Comparator<McssLog>() {
@Override
public int compare(McssLog log1, McssLog log2) {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
try {
Date dt1 = format.parse(log1.getOp_time());
Date dt2 = format.parse(log2.getOp_time());
if (dt1.getTime() > dt2.getTime()) {
return 1;
} else if (dt1.getTime() < dt2.getTime()) {
return -1;
} else {
return 0;
}
} catch (Exception e) {
e.printStackTrace();
}
return 0;
}
});
}
}
private static void ListSort(LinkedList<McssLog> list) throws Exception {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
McssLog mcssLog =null;
for(int i=1; i<list.size();i++) {
Date dt1 = format.parse(list.get(i).getOp_time());
Date dt2 = format.parse(list.get(i-1).getOp_time());
if(dt1.getTime()<dt2.getTime()) {
int j;
mcssLog=list.get(i);
Date dt3 = format.parse(mcssLog.getOp_time());
list.set(i, list.get(i-1));
for( j=i-1;j>=0 && format.parse(list.get(j).getOp_time()).getTime()>dt3.getTime();j--) {
list.set(j+1,list.get(j));
}
list.set(j+1, mcssLog);
}
}
}