最近在项目中需要将读取的数据按照时间的降序进行排序。
具体的步骤如下:
1.读取数据,存入List中
2.取出数据中的时间戳,由String转换成Date
3.使用冒泡排序对List中元素按照Date进行排序
具体代码如下:
1 //将List按照时间倒序排列 2 @SuppressLint("SimpleDateFormat") 3 private List<TestEntity> invertOrderList(List<TestEntity> L){ 4 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 5 Date d1; 6 Date d2; 7 TestEntity temp_r = new TestEntity(); 8 //做一个冒泡排序,大的在数组的前列 9 for(int i=0; i<L.size()-1; i++){ 10 for(int j=i+1; j<L.size();j++){ 11 ParsePosition pos1 = new ParsePosition(0); 12 ParsePosition pos2 = new ParsePosition(0); 13 d1 = sdf.parse(L.get(i).getDate(), pos1); 14 d2 = sdf.parse(L.get(j).getDate(), pos2); 15 if(d1.before(d2)){//如果队前日期靠前,调换顺序 16 temp_r = L.get(i); 17 L.set(i, L.get(j)); 18 L.set(j, temp_r); 19 } 20 } 21 } 22 return L; 23 }