java之日期字符串排序测试

	public static long DateCompare(String s1,String s2){
		try {
			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
			Date d1 = sdf.parse(s1);
			Date d2 = sdf.parse(s2);
			return ((d1.getTime() - d2.getTime())/(24*3600*1000));
		} catch (ParseException e) {
			e.printStackTrace();
		}
		return 0;
	}
	
	public static void sortlistTest(){
		List list = new ArrayList();
		List newlist = new ArrayList();
		list.add("2017-1-1");
		list.add("2017-1-8");
		list.add("2017-1-16");
		list.add("2017-1-9");
		list.add("2017-1-8");
		list.add("2017-1-12");
		list.add("2017-1-3");
		list.add("2017-1-11");
		list.add("2017-1-12");
		list.add("2017-1-3");
		list.add("2017-1-7");
		list.add("2017-1-7");
		System.out.println(list);
		for(int i=0; i=0&&(DateCompare(tmp, newlist.get(j))<0); j--){
					newlist.set(j+1, newlist.get(j));
				}
				newlist.set(j+1, tmp);
		}
		System.out.println(newlist);
	}
	public static void main(String[] args) {
		sortlistTest();
	}

结果:

[2017-1-1, 2017-1-8, 2017-1-16, 2017-1-9, 2017-1-8, 2017-1-12, 2017-1-3, 2017-1-11, 2017-1-12, 2017-1-3, 2017-1-7, 2017-1-7]
[2017-1-1, 2017-1-8, 2017-1-16, 2017-1-9, 2017-1-12, 2017-1-3, 2017-1-11, 2017-1-7]
[2017-1-1, 2017-1-3, 2017-1-7, 2017-1-8, 2017-1-9, 2017-1-11, 2017-1-12, 2017-1-16]

你可能感兴趣的:(java)