在Android开发中,我们经常碰到数组排序的问题,大多数人自己写冒泡排序,但这样即费事又不一定好,官方给我们提供了一个很简单的方法可以又快又好的排序数组。
首先,实现接口Comparator。
private class ComparatorByDate implements Comparator<String> {
@Override
public int compare(String lhs, String rhs) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd_HHmmss");
try {
Date sDate = sdf.parse(lhs);
Date rDate = sdf.parse(rhs);
long diff = sDate.getTime() - rDate.getTime();
if (diff > 0) {
return 1;
} else if (diff < 0) {
return -1;
}
} catch (ParseException e) {
e.printStackTrace();
}
return 0;
}
}
其次,使用Arrays.sort()排序数组。
Arrays.sort(titlesArray,new ComparatorByDate()); // titlesArray是一个String数组