【问题标题】:How to sort ArrayList based on a variables value [duplicate]如何根据变量值对ArrayList进行排序[重复]
【发布时间】:2013-05-13 19:27:57
【问题描述】:

我有一个ArrayList<Users> users_list;,在用户中我有姓名、姓氏、年龄等。我想实现一种排序算法,该算法将根据用户年龄对我的数组列表进行排序。我搜索了很多,但只找到了排序数组。

【问题讨论】:

    标签: java sorting arraylist


    【解决方案1】:

    使用自定义java.util.Comparator

    public class UserComparator implements Comparator<User> {
        @Override
        public int compare(User u1, User u2) {
            return u1.getAge().compareTo(u2.getAge());
        }
    }
    

    然后按如下方式排序:

    Collections.sort(users_list, new UserComparator());
    

    【讨论】:

      【解决方案2】:

      看看这里。 JavaBeans Comparison。 第二个答案似乎更中肯。

      我建议使用http://commons.apache.org/proper/commons-collections/apidocs/org/apache/commons/collections/ComparatorUtils.html#naturalComparator()

      作为 BeanComparator 的比较器参数。

      【讨论】:

        猜你喜欢
        • 2013-01-08
        • 2012-11-20
        • 1970-01-01
        • 2017-09-06
        • 1970-01-01
        • 1970-01-01
        • 2013-07-05
        • 2015-06-22
        • 2013-03-10
        相关资源
        最近更新 更多