如何排序在android的递减顺序从ArrayList的日期日期? [英] How to Sort Date in descending order From Arraylist Date in android?
本文介绍了如何排序在android的递减顺序从ArrayList的日期日期?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个的ArrayList
哪些商店日期
和我整理他们的降序排列。现在,我想在的ListView
来显示它们。这是我做的,到目前为止:
spndata.setOnItemSelectedListener(新OnItemSelectedListener(){
公共无效onItemSelected(适配器视图<>为arg0,ARG1查看,
INT位置,长ARG3){ 开关(位置){
情况下0:
清单= DBAdpter.requestUserData(assosiatetoken);
的for(int i = 0; I<则为list.size();我++){
如果(list.get(我).lastModifiedDate!= NULL){
lv.setAdapter(新MyListAdapter(
getApplicationContext(),列表));
}
}
打破;
情况1:
清单= DBAdpter.requestUserData(assosiatetoken); 日历C = Calendar.getInstance();
SimpleDateFormat的DF3 =新的SimpleDateFormat(MM / DD / YYYY HH:MM:SS);
串formattedDate3 = df3.format(c.getTime());
Log.v(log_tag,日期+ formattedDate3); 的for(int i = 0; I<则为list.size();我++){
如果(list.get(我).submitDate!= NULL){
字符串SDATE = list.get(我).submitDate;
SimpleDateFormat的DF4 =新的SimpleDateFormat(MM / DD / YYYY HH:MM:SS);
字符串formattedDate4 = df4.format(SDATE); 地图<日期,整数GT; dateMap =新TreeMap的<日期,整数GT(新的比较<日期及GT;(){
公众诠释比较(日期formattedDate3,日期formattedDate4){
返回formattedDate3.compareTo(formattedDate4);
}
});
lv.setAdapter(新MyListAdapter(
getApplicationContext(),列表));
}
}
打破;
案例2: 打破; 案例3: 打破; 默认:
打破;
} } 公共无效onNothingSelected(适配器视图<>为arg0){
} });
解决方案
创建的ArrayList<日期和GT;
Date类的。并使用 Collections.sort()
为升序排列。
对指定列表按升序进行,根据元素的自然顺序。
块引用>有关排序是按降序排列见的 Collections.reverseOrder()
Collections.sort(yourList,Collections.reverseOrder());
I have an
ArrayList
which storesDate
s and I sorted them in descending order. Now I want to display them in aListView
. This is what I did so far:spndata.setOnItemSelectedListener(new OnItemSelectedListener() { public void onItemSelected(AdapterView<?> arg0, View arg1, int position, long arg3) { switch (position) { case 0: list = DBAdpter.requestUserData(assosiatetoken); for (int i = 0; i < list.size(); i++) { if (list.get(i).lastModifiedDate != null) { lv.setAdapter(new MyListAdapter( getApplicationContext(), list)); } } break; case 1: list = DBAdpter.requestUserData(assosiatetoken); Calendar c = Calendar.getInstance(); SimpleDateFormat df3 = new SimpleDateFormat("MM/dd/yyyy hh:mm:ss a"); String formattedDate3 = df3.format(c.getTime()); Log.v("log_tag", "Date " + formattedDate3); for (int i = 0; i < list.size(); i++) { if (list.get(i).submitDate != null) { String sDate = list.get(i).submitDate; SimpleDateFormat df4 = new SimpleDateFormat("MM/dd/yyyy hh:mm:ss a"); String formattedDate4 = df4.format(sDate); Map<Date, Integer> dateMap = new TreeMap<Date, Integer>(new Comparator<Date>(){ public int compare(Date formattedDate3, Date formattedDate4) { return formattedDate3.compareTo(formattedDate4); } }); lv.setAdapter(new MyListAdapter( getApplicationContext(), list)); } } break; case 2: break; case 3: break; default: break; } } public void onNothingSelected(AdapterView<?> arg0) { } });
解决方案Create
Arraylist<Date>
of Date class. And useCollections.sort()
for ascending order.Sorts the specified list into ascending order, according to the natural ordering of its elements.
For Sort it in descending order See Collections.reverseOrder()
Collections.sort(yourList, Collections.reverseOrder());
这篇关于如何排序在android的递减顺序从ArrayList的日期日期?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文