0
請幫我解決這個問題。我一直在嘗試編寫不同的比較器,並且它們都不能正常工作。ArrayList比較器<Object>無法正常工作
他們喜歡按部分分類。讓事情象值:0, 4, 1, 9 , 18, 3, 18, 9.
它排序是這樣的:9, 9, 0, 1, 3, 18, 18, 4.
有些「受命」隨機我會說。
請幫助找到我做錯了什麼。
類數據和Comparator
:
public class CoursesData {
private String url;
private String name;
private String lessonsCount;
private String isFree;
private String price;
private String language;
private String difficulty;
private AuthorData author;
public static Comparator<CoursesData> CoursesDataPriceComparator = new Comparator <CoursesData>() {
public int compare (CoursesData left, CoursesData right){
return right.getPrice().compareTo(left.getPrice());
}
};
....(getter-setters)
怎麼我用這個比較:
ArrayList<CoursesData> coursesDatas = parserJson.getCourses();
Collections.sort(coursesDatas, CoursesData.CoursesDataPriceComparator);
mAdapter = new CoursesItemAdapter(getActivity(),
R.layout.catalog_list_item, coursesDatas);
價格是字符串,但使用的數字值。也許它的問題...
感謝您的任何幫助。
*也許它的問題*。它實際上是。你可以使用'Integer.parseInt'來獲得實際的'int',並在這些 – Blackbelt 2015-02-05 15:27:23