今天在项目中有遇到后台返回的的json数据是一个不规则的日期类型list的集合,而前台需要降序排序显示,在网上找了好一会,自己东拼西凑才弄好,希望对其他码友又帮助
返回的是个这样的数据
在冒牌排序之后变成这样
这样就降序排序 了
代码:
itemValue就是上面那个数据的List<String>的集合;
public void DataSort(){
// Date1.after(Date2),当Date1大于Date2时,返回TRUE,当小于等于时,返回false;
// Date1.before(Date2),当Date1小于Date2时,返回TRUE,当大于等于时,返回false;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA);
for (int i = 0; i < itemValue.size() - 1; i++) {
for (int j = 1; j < itemValue.size() - i; j++) {
String a;
Date data1 = null;
Date data2 = null;
try {
data1 = sdf.parse(itemValue.get(j - 1).toString());
data2 = sdf.parse(itemValue.get(j).toString());
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// 比较两个整数的大小
boolean flag = data1.before(data2);
if (flag) {
a = itemValue.get(j - 1);
itemValue.set((j - 1), itemValue.get(j));
itemValue.set(j, a);
}
}
}
}