Android实现数据按照时间排序
经常遇见一个列表,两个接口的情况,两个接口属于两个不同的表数据,那么数据拼接回来之后,并不是按照时间排序的,看起来就相当混乱,所以记录一下如何对数据按照时间排序。
步骤一:
格式化日期
publicstaticDatestringToDate(StringdateString){ ParsePositionposition=newParsePosition(0); SimpleDateFormatsimpleDateFormat=newSimpleDateFormat("yyyy-MM-ddHH:mm:ss"); DatedateValue=simpleDateFormat.parse(dateString,position); returndateValue; }
步骤二:
对拼接的列表进行排序
privatevoidsortData(ArrayListmList){ Collections.sort(mList,newComparator (){ /** * *@paramlhs *@paramrhs *@returnaninteger<0iflhsislessthanrhs,0iftheyare *equal,and>0iflhsisgreaterthanrhs,比较数据大小时,这里比的是时间 */ @Override publicintcompare(CourseModellhs,CourseModelrhs){ Datedate1=DateUtil.stringToDate(lhs.getCREATE_TIME()); Datedate2=DateUtil.stringToDate(rhs.getCREATE_TIME()); //对日期字段进行升序,如果欲降序可采用after方法 if(date1.before(date2)){ return1; } return-1; } }); adapter.replaceAll(mList); }
直接调用这个方法,数据类型改造一下即可。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。