谁能建议如何在android Recycler View中按产品价格实现排序[关闭]

【谁能建议如何在android Recycler View中按产品价格实现排序[关闭]】于今腐草无萤火,终古垂杨有暮鸦。这篇文章主要讲述谁能建议如何在android Recycler View中按产品价格实现排序[关闭]相关的知识,希望能为你提供帮助。
由于我需要对数组List的值进行排序,我无法获得不同算法的排序算法,如选择排序,快速排序和冒泡排序。我是android应用程序开发的新手,请帮我解决这个问题。提前致谢

public class TestingSort { public static void main(String args[]){ToSort toSort1 = new ToSort(new Float(3), "3"); ToSort toSort2 = new ToSort(new Float(6), "6"); ToSort toSort3 = new ToSort(new Float(9), "9"); ToSort toSort4 = new ToSort(new Float(1), "1"); ToSort toSort5 = new ToSort(new Float(5), "5"); ToSort toSort6 = new ToSort(new Float(0), "0"); ToSort toSort7 = new ToSort(new Float(3), "3"); ToSort toSort8 = new ToSort(new Float(-3), "-3"); List< ToSort> sortList = new ArrayList< ToSort> (); sortList.add(toSort1); sortList.add(toSort2); sortList.add(toSort3); sortList.add(toSort4); sortList.add(toSort5); sortList.add(toSort6); sortList.add(toSort7); sortList.add(toSort8); Collections.sort(sortList); for(ToSort toSort : sortList){ System.out.println(toSort.toString()); } }}public class ToSort implements Comparable< ToSort> {private Float val; private String id; public ToSort(Float val, String id){ this.val = val; this.id = id; }@Override public int compareTo(ToSort f) {if (val.floatValue() > f.val.floatValue()) { return 1; } else if (val.floatValue() < f.val.floatValue()) { return -1; } else { return 0; }}@Override public String toString(){ return this.id; } }

答案你需要使用ComparatorCollections.sort()
Collections.sort(YourArraylist, new Comparator< ModelObject> (){ public int compare(ModelObject o1, ModelObject o2){ return o1.getPrice() - o2.getPrice(); } });

如果您使用的是java 8,则可以使用以下代码。
Collections.sort(YourArraylist, (o1, o2) -> o1.getPrice() - o2.getPrice());


    推荐阅读