Android中對集合中的物件進行排序

2021-08-14 11:45:21 字數 883 閱讀 4195

最近需要乙個對物件進行排序的功能。

思路:1、新建乙個類實現comparator<?>,這個類是實現比較的關鍵類,一般做比較的型別為int或string。

public class ordersortutil implements comparator

}

如果物件的屬性為int型別則比較方式為file2.getmediaid()-file1.getmediaid();

如果物件的屬性為string型別則比較方式為 file2.geturistr.compareto(file2.geturistr);

以上為降序排列。如果公升序則調換「-」前後資料的位置。

2、呼叫方法

使用collections.sort(filelist,new ordersortutil())進行排序,第乙個引數為要排序的物件集合,第二個引數為上面新建的比較類。

listfilelist = new arraylist();  

for (int i = 0; i < 6; i++)

collections.sort(filelist, new ordersortutil());

for (int i = 0; i < filelist.size(); i++)

實體類localfile:

public class localfile implements parcelable 

public void setmediaid(int mediaid)

public string geturistr()

public void seturistr(string uristr)

}

Android集合中物件排序

如果將集合中的物件進行排序,最近使用了乙個簡單的方法解決了,隨筆記下來。主要思路 首先,新建類實現comparator,這個類是做比較的關鍵類,一般做比較的型別 int 或 string型別。如果屬性為int型別比較方式為 rhs.getage lhs.getage 如果屬性為string型別方式為...

對集合中的物件進行排序

方法 實現comparator介面並重寫它的compare 方法,在方法內部制定排序規則。我們有如下學生類,在不改變學生類原始碼的情況下,按照某種規則,對集合中儲存的學生物件進行排序。public class student public student string id,string name,...

對List集合中物件的某個屬性進行排序

通過讓實體類實現comparable介面,並重寫compareto方法。lombok自動生成getset及tostring data public class entity implements comparable override public int compareto entity o el...