对 List<map>内对象进行排序
2011-12-02 16:51
369 查看
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
public class Main {
/**
* @param args
*/
public static void main(String[] args) {
Map<String,String> map1 = new HashMap<String, String>();
map1.put("operationTime", "2010-01-10 12:20:00");
Map<String,String> map2 = new HashMap<String, String>();
map2.put("operationTime", "2010-01-10 12:40:00");
Map<String,String> map3 = new HashMap<String, String>();
map3.put("operationTime", "2010-01-10 12:30:00");
List<Map<String,String>> list = new ArrayList<Map<String,String>>();
list.add(map1);
list.add(map2);
list.add(map3);
System.out.println("排序前的list:");
System.out.println(list);
final SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Collections.sort(list, new Comparator<Map<String,String>>(){
public int compare(Map<String, String> o1, Map<String, String> o2)
{
//取出操作时间
int ret = 0;
try
{
ret = df.parse(o1.get("operationTime")).compareTo(df.parse(o2.get("operationTime")));
} catch (ParseException e)
{
throw new RuntimeException(e);
}
return ret;
}
});
System.out.println("排序后的list:");
System.out.println(list);
}
}
转载地址:http://www.iteye.com/problems/34693
import java.text.SimpleDateFormat;
import java.util.*;
public class Main {
/**
* @param args
*/
public static void main(String[] args) {
Map<String,String> map1 = new HashMap<String, String>();
map1.put("operationTime", "2010-01-10 12:20:00");
Map<String,String> map2 = new HashMap<String, String>();
map2.put("operationTime", "2010-01-10 12:40:00");
Map<String,String> map3 = new HashMap<String, String>();
map3.put("operationTime", "2010-01-10 12:30:00");
List<Map<String,String>> list = new ArrayList<Map<String,String>>();
list.add(map1);
list.add(map2);
list.add(map3);
System.out.println("排序前的list:");
System.out.println(list);
final SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Collections.sort(list, new Comparator<Map<String,String>>(){
public int compare(Map<String, String> o1, Map<String, String> o2)
{
//取出操作时间
int ret = 0;
try
{
ret = df.parse(o1.get("operationTime")).compareTo(df.parse(o2.get("operationTime")));
} catch (ParseException e)
{
throw new RuntimeException(e);
}
return ret;
}
});
System.out.println("排序后的list:");
System.out.println(list);
}
}
转载地址:http://www.iteye.com/problems/34693
相关文章推荐
- 对List<Map>进行排序
- java利用list<Map>的value进行排序
- C#中对List<Object>泛型集合,根据对象的某一属性进行升序排序
- 对一个List<B>类型的对象进行排序
- 对List<>中对象的属性进行排序。
- 如何对List<Map> 进行排序
- 用Comparator对List<Map>进行排序
- List<Map>按时间排序
- JAVA中对List<map<String,Object>>根据map某个key值进行排序
- List<Map>排序
- List<Map>排序
- 使用Func<T>对对象进行排序
- JAVA版List<Map>排序,按字符或数字类型排序,支持正序倒序
- list<T> 自定义比较器进行排序
- Java中List<Map>的排序
- 定义一个静态方法,该方法可以接收一个List<Integer>,方法内对List进行排序
- JAVA中对List<Map<String,Object>>中的中文汉字进行排序
- List<Map> 排序
- 根据对象的某个字段对List<Object>排序
- JAVA中对List<Map<String,Object>>中的中文汉字进行排序