JAVA list 排序

原创 2013年12月04日 20:19:24
项目有个根据日期排序的难题。我已把查好的数据封装到了list中。日期存的是字符串类型。同事想出的办法。附上代码

import java.util.HashMap;
import java.util.Map;
import org.apache.commons.lang.StringUtils;
import java.util.Comparator


public class ComparatorArea implements Comparator {
Map<String, Integer> sortValue = new HashMap<String, Integer>();


public int compare(Object p1, Object p2) {
Object o1 = ((Map) p1).get("classDate").toString()+" "+((Map) p1).get("classtime").toString();
Object o2 = ((Map) p2).get("classDate").toString()+" "+((Map) p1).get("classtime").toString();
String key1 = o1 != null ? o1.toString() : "";
String key2 = o2 != null ? o2.toString() : "";
if (StringUtils.isEmpty(key1) && StringUtils.isEmpty(key2)) {
return 0;// 都为null或空串,相等
} else if (key1.equals(key2)) {
return 0;
} else if (StringUtils.isEmpty(key1) && !StringUtils.isEmpty(key2)) {
return 1;// null或空串越向后靠
} else if (!StringUtils.isEmpty(key1) && StringUtils.isEmpty(key2)) {
return -1;// null或空串越向后靠
} else if (key1.compareTo(key2) > 0) {
return -1;// null或空串越向后靠
} else if (key1.compareTo(key2) == 0) {
return 0;// null或空串越向后靠
} else if (key1.compareTo(key2) < 0) {
return 1;// null或空串越向后靠
} else {
return -1;
}
}
}
//用法
ComparatorArea comparator = new ComparatorArea();
Collections.sort(list,comparator);//这里存放已经封装好的要排序的list
System.out.println(list.toString());//之后直接对list进行输出即可

需要另外导入一个包。StringUtils是struts中的common-logging包

JAVA LIST排序

  • 2013年09月09日 21:39
  • 719B
  • 下载

java List排序demo

  • 2016年03月22日 16:24
  • 5KB
  • 下载

java list按照元素对象的指定多个字段属性进行排序

java list按照元素对象的多个字段属性进行排序

Java(List)中的自定义对象按属性(字段)排序(正序、倒序)的方法

1. 要求 对列表(List)中的自定义对象,要求能够按照对象的属性(字段)进行排序(正序、倒序)。 如:用户对象(Member)有用户名(username)、级别(level)、出生日期...

Java中集合List按照集合内实体类元素的指定字段排序方法

直接上代码,注释非常详细:-----//直接拷贝可用 package com.listsort; import java.lang.reflect.Method; import java.util...

Java中List根据指定字段排序工具类

根据指定字段来对List进行排序

java操作mongodb基础(查询 排序 输出list)

package com.infomorrow.webroot; import java.util.List; import com.mongodb.BasicDBObject; import com....

Java对List对象进行排序

有时候需要对List对象进行排序,如果每一处都去写一个排序方法,就会产生重复代码的坏味道,而且每一处都写,工作量会很大。 我们知道,Java提供了一个Collections.sort()方法可以对Li...
  • zht666
  • zht666
  • 2013年11月27日 17:50
  • 10828
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JAVA list 排序
举报原因:
原因补充:

(最多只允许输入30个字)