`

List排序

 
阅读更多
集合类List存放的数据,默认是按照放入时的顺序存放的,比如依次放入A、B、C,则取得时候,则也是A、B、C的顺序,实际场景中,有时我们需要根据自定义的规则对List中的元素进行排序,该如何实现呢?看下面小例子:

Student.java
/**
 * User: liuwentao
 * Time: 12-3-27 下午8:13
 */
public class Student {
    private int age;

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
    @Override
    public String toString() {
        return getAge()+"";
    }
}

Test.java
/**
 * User: liuwentao
 * Time: 12-3-27 下午8:12
 */
public class Test {
    public static void main(String[] args) {
        List<Student> list = new ArrayList<Student>();
        //创建3个学生对象,年龄分别是20、19、21,并将他们依次放入List中
        Student s1 = new Student();
        s1.setAge(20);
        Student s2 = new Student();
        s2.setAge(19);
        Student s3 = new Student();
        s3.setAge(21);
        list.add(s1);
        list.add(s2);
        list.add(s3);

        System.out.println("排序前:"+list);

        Collections.sort(list, new Comparator<Student>() {

            /*
             * int compare(Student o1, Student o2) 返回一个基本类型的整型,
             * 返回负数表示:o1 小于o2,
             * 返回0 表示:o1和o2相等,
             * 返回正数表示:o1大于o2。
             */
            public int compare(Student o1, Student o2) {

                //按照学生的年龄进行升序排列
                if (o1.getAge() > o2.getAge()) {
                    return 1;
                }
                if (o1.getAge() == o2.getAge()) {
                    return 0;
                }
                return -1;
            }
        });
        System.out.println("排序后:"+list);
    }
}

执行结果:



  • 大小: 11.1 KB
分享到:
评论

相关推荐

    java List排序工具类

    java List排序工具类 使用示例: new OrderUtils().order(list, "name", OrderUtils.DESC); 相关实例代码: public static void main(String[] args) { List&lt;Person&gt; list = getData(); // 获取无序数据 new ...

    实现了MFC list排序

    实现了MFC list排序实现了MFC list排序实现了MFC list排序实现了MFC list排序

    按照规则,对list排序

    * 对传入的list进行分组排序 * list里面数据格式 [01-01-开头.txt, 01-02-简介.jpg, 11-01-尾声.jpg, 11-03-空白.jpg, 11-04-空白2.jpg, 11-06-空白1.jpg, 11-02-答谢语.txt, 02-01-标题.jpg, 02-09-标题555.jpg, ...

    list排序

    list排序

    java List 排序 Collections.sort

    NULL 博文链接:https://xuedong.iteye.com/blog/1147254

    JAVA SortList 通用排序类

    JAVA SortList 通用排序类 从网上搜到一个java 对 List 排序的工具,自己改了下 支持 整数 和 浮点数 比较后排序,浮点数小数部分的有点问题,期待大牛帮忙优化。

    java List排序demo

    有时候我们可能有这样的需求:将一个List按照某个字段进行排序。比如现在有多个Student,我们要将这些学生按照成绩(grad)进行排序,本demo就是一个将List排序的demo

    CSortList list排序子类

    一个简单的list排序子类,没有封装。大家可以看看。直接调用即可

    java中list排序

    在数据库中查出来的列表list中,往往需要对不同的字段重新排序,一般的做法都是使用排序的字段,重新到数据库中查询。如果不到数据库查询,直接在第一次查出来的list中排序,无疑会提高系统的性能。

    java list排序

    java开发,使用list对其进行排序,,易学简单。。。。。。。。。

    JAVALIST排序.pdf

    JAVALIST排序.pdf

    Dui list排序

    Duilist 排序,list以及扩展,可以随意插入控件

    list排序 Icompare接口

    继承icompare接口,从而实现list的排序,如果list有多列 可以执行任意列

    c# List类排序方法

    List类几种排序方法比较灵活 可以根据自己的需要 选用合适的方法

    java List中对象多属性排序及各属性排序设置

    天才之作:通过泛型,对List中对象多属性排序,支持设置各属性排序方式(动态属性),看了之后绝对让你震撼!

    C# List 排序

    NULL 博文链接:https://overloving.iteye.com/blog/1751131

    android List列表拼音排序

    在listview中,实现中文拼音排序的效果

    Android里List时间升序排序

    由于Collections排序实际上是对字符串进行比较,然后对日期排序,但是有时候给的日期不是很规范,所以想把日期统一化, 这样用Collections进行升序排序

    Java Collections.sort()实现List排序的默认方法和自定义方法

    主要介绍了Java Collections.sort()实现List排序的默认方法和自定义方法,需要的朋友可以参考下

Global site tag (gtag.js) - Google Analytics