比如list中的值:{FINISH_DATA=2014-01-11, BEGIN_DATA=2014-01-05}{FINISH_DATA=2013-03-16, BEGIN_DATA=2013-03-10}
{FINISH_DATA=2013-03-09, BEGIN_DATA=2013-03-03}
{FINISH_DATA=2013-01-19, BEGIN_DATA=2013-01-13}
{FINISH_DATA=2013-01-12, BEGIN_DATA=2013-01-06}
{FINISH_DATA=2013-01-05, BEGIN_DATA=2012-12-30}
{FINISH_DATA=2012-01-07, BEGIN_DATA=2012-01-01}
{FINISH_DATA=2013-03-02, BEGIN_DATA=2013-02-24}
对 BEGIN_DATA按降序排序,求大神解答。 感激不尽!listjavaobject
{FINISH_DATA=2013-03-09, BEGIN_DATA=2013-03-03}
{FINISH_DATA=2013-01-19, BEGIN_DATA=2013-01-13}
{FINISH_DATA=2013-01-12, BEGIN_DATA=2013-01-06}
{FINISH_DATA=2013-01-05, BEGIN_DATA=2012-12-30}
{FINISH_DATA=2012-01-07, BEGIN_DATA=2012-01-01}
{FINISH_DATA=2013-03-02, BEGIN_DATA=2013-02-24}
对 BEGIN_DATA按降序排序,求大神解答。 感激不尽!listjavaobject
解决方案 »
- 关于java连接数据库关闭连接的问题
- 现在想学习java EE 里面的内容,主要是强大的注解,有什么书可以推介下吗,谢谢
- 本机多IP怎么解决
- java与flex之间socket通信问题
- cvs [server aborted]: cannot rename file 急急急,坐等。
- jsp编译出错,请高手帮我看下!
- 关于JASPER的问题??如何在一个界面中将多个注入了数据的JASPER,一齐或有选择打印??
- 请问一下,我有多个hibernate的应用访问一个数据库,怎么能够把数据库连接统一管理起来?用Jndi?
- 请大家修改(jsp代码)
- Spring AOP 注解方式实现增强出现环绕在前置前面的问题
- 新手问一个hql语句非常简单的问题。
- 通过SessionId取Session?
import java.text.SimpleDateFormat;
import java.util.Comparator;
import java.util.Date;
import java.util.Map;public class TestComparator implements Comparator<Map<String, String>> { @Override
public int compare(Map<String, String> o1, Map<String, String> o2) {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
Date d1 = null;
Date d2 = null;
for (String k : o1.keySet()) {
try {
d1 = format.parse(o1.get(k).substring(11));
} catch (ParseException e) {
e.printStackTrace();
}
}
for (String k : o2.keySet()) {
try {
d2 = format.parse(o2.get(k).substring(11));
} catch (ParseException e) {
e.printStackTrace();
}
}
if (d1.before(d2)) {
return 1;
} else if (d1.after(d2)) {
return -1;
} else {
return 0;
}
}}package org.vicky.test;import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;public class Test {
public static void main(String[] args) {
List<Map<String, String>> list = new ArrayList<Map<String, String>>();
Map<String, String> map1 = new HashMap<String, String>();
map1.put("FINISH_DATA=2013-03-09", "BEGIN_DATA=2013-03-03");
Map<String, String> map2 = new HashMap<String, String>();
map2.put("FINISH_DATA=2013-01-19", "BEGIN_DATA=2013-01-13");
Map<String, String> map3 = new HashMap<String, String>();
map3.put("FINISH_DATA=2013-01-12", "BEGIN_DATA=2013-01-06");
Map<String, String> map4 = new HashMap<String, String>();
map4.put("FINISH_DATA=2013-01-05", "BEGIN_DATA=2012-12-30");
list.add(map1);
list.add(map2);
list.add(map3);
list.add(map4);
Collections.sort(list, new TestComparator());
for (Map<String, String> m : list) {
for (Map.Entry<String, String> en : m.entrySet()) {
System.out.println(en.getKey() + " , " + en.getValue());
}
}
}
}
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;public class Demo {
public static void main(String[] args) {
List<Map<String, String>> list = new ArrayList<Map<String, String>>();
Map<String, String> data1 = new HashMap<String, String>();
Map<String, String> data2 = new HashMap<String, String>();
Map<String, String> data3 = new HashMap<String, String>();
data1.put("BEGIN_DATA", "2014-01-05");
data2.put("BEGIN_DATA", "2014-01-01");
data3.put("BEGIN_DATA", "2014-01-08");
list.add(data1);
list.add(data2);
list.add(data3);
// 排序前
System.out.println("Before sort.");
for (Map<String, String> m : list) {
System.out.println(m.get("BEGIN_DATA"));
}
// 排序
Collections.sort(list, new MapComparator());
// 排序后
System.out.println("After sort.");
for (Map<String, String> m : list) {
System.out.println(m.get("BEGIN_DATA"));
}
}
static class MapComparator implements Comparator<Map<String, String>> { @Override
public int compare(Map<String, String> o1, Map<String, String> o2) {
// TODO Auto-generated method stub
String b1 = o1.get("BEGIN_DATA");
String b2 = o2.get("BEGIN_DATA");
if (b2 != null) {
return b2.compareTo(b1);
}
return 0;
} }}