java中的ArrayList需要通過collections類的sort方法來進行排序
如果想自定義排序方式則需要有類來實現Comparator接口並重寫compare方法
調用sort方法時將ArrayList對象與實現Commparator接口的類的對象作爲參數
1.獲取ArrayList數據
ArrayList<Chapter> list = executeChapter.getStudyRecordChapters();
Collections.sort(list, new Order());
adapter.setList(list);
2.重寫Collection的compare方法
/**
* 對集合排序
*/
public class Order implements Comparator<Chapter> {
@Override
public int compare(Chapter lhs, Chapter rhs) {
// TODO Auto-generated method stub
//按照時間順序最新的在上面
long a = Long.decode(rhs.getStudyTime());
long b = Long.decode(lhs.getStudyTime());
long c = a - b;
if (c > 0) {
return 1;
} else if (c == 0) {
return 0;
} else {
return -1;
}
}
}