当前位置:   article > 正文

Android---对ArrayList排序_android arraylist 排序

android arraylist 排序

在做项目的同时,遇到有一个对ArrayList进行排序的功能,在网上查找了些有关与这方面的代码,最后找到了如下的代码:

先定义一个类A:

  1. public class A
  2. {
  3. private int level;
  4. public A(int level){
  5. this.level = level;
  6. }
  7. public int getLevel()
  8. {
  9. return level;
  10. }
  11. public void setLevel(int level)
  12. {
  13. this.level = level;
  14. }
  15. }

然后定义一个SortComparator类,实现Comparator接口:

  1. import java.util.Comparator;
  2. public class SortComparator implements Comparator {
  3. @Override
  4. public int compare(Object lhs, Object rhs) {
  5. A a = (A) lhs;
  6. A b = (A) rhs;
  7. return (b.getLevel() - a.getLevel());
  8. }
  9. }

最后在Activity中,实现排序的方法:

  1. List<A> list = new ArrayList<A>();
  2. list.add(new A(1));
  3. list.add(new A(2));
  4. list.add(new A(3));
  5. Comparator comp = new SortComparator();
  6. Collections.sort(list,comp);

就完成了对ArrayList按照level从达到小进行排序。

其实在网上很多的类似的例子上说,在实现Comparator接口的时候,它的返回值可以是0,其实在我测试的时候,它的返回值如果是0的话,达不到排序的效果。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/715573
推荐阅读
相关标签
  

闽ICP备14008679号