有時候我們需要多列表中的數(shù)據(jù)進行特定的排序,最近項目中用到的是按名稱排序,所以簡單來說一下:
10年積累的成都網(wǎng)站設(shè)計、成都做網(wǎng)站經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認識你,你也不認識我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有新疆免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
效果圖:
排序方法:
Collections.sort(students, new SortChineseName()); for (Student s : students) { Log.e("David", "名稱正序排列:" + s.getName()); } Log.d("David", "---------------------------------------"); Collections.reverse(students); for (Student s : students) { Log.e("David", "名稱倒序排列(一):" + s.getName()); } Log.d("David", "---------------------------------------"); Collections.sort(students, Collections.reverseOrder(new SortChineseName())); for (Student s : students) { Log.e("David", "名稱倒序排列(二):" + s.getName()); }
sort方法
class SortChineseName implements Comparator<ResolveInfo> { /** * create by Davide * 參數(shù)說明: * ResolveInfo 為你的List集合中的類-我這里為 android系統(tǒng)中apk信息類 */ private Context mContext; //構(gòu)造-傳進來context對象 public SortChineseName(Context mContext) { this.mContext = mContext; } Collator cmp = Collator.getInstance(java.util.Locale.CHINA); @Override public int compare(ResolveInfo info1, ResolveInfo info2) { String apkName1 = info1.loadLabel(mContext.getPackageManager()).toString(); String apkName2 = info2.loadLabel(mContext.getPackageManager()).toString(); /** *create by Davide *開始比較-我這兒按照apk的名稱排序,便獲取apkName */ if (cmp.compare(apkName1, apkName2) > 0) { return 1; } else if (cmp.compare(apkName1, apkName2) < 0) { return -1; } return 0; } }
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。
網(wǎng)頁標題:Android實現(xiàn)列表數(shù)據(jù)按名稱排序、中英文混合排序
鏈接分享:http://www.rwnh.cn/article36/jesppg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、電子商務(wù)、標簽優(yōu)化、網(wǎng)站制作、品牌網(wǎng)站設(shè)計、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)