List根据实体类的某个属性升序或者降序来排列

介绍

最近做的一个前台的页面的获曲数据库某个表的列表的功能,要求按照表的某个属性来升序最好不要动mybatis,所以通过mybatis获取的list,通过方法的 Collections.sort(list, new Comparator() {…});进行排序

升序 / 降序

int i=o1.getMissId()-o2.getMissId();//升序
// int i=o2.getMissId()-o1.getMissId();降序

具体的代码的简单实例

import java.util.*;

/**
 * List根据实体类的某个属性升序或者降序来排列
 *
 * @author hjsjy
 * @create 2018/12/20
 * @since 1.0.0
 */
class Mission{
    int  missId;
    String name;
    public Mission(int  missId, String name){
        this.missId = missId;
        this.name =name;
    }
    public int getMissId() {
        return missId;
    }

    public void setMissId(int missId) {
        this.missId = missId;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Override
    public String toString() {
        return "Mission{" +
                "missId=" + missId +
                ", name='" + name + '\'' +
                '}';
    }
}
public class ListTest {
    public static void main(String[] args) {
        Mission mission1 =new Mission(89,"鸣人");
        Mission mission2 =new Mission(50,"路飞");
        Mission mission3 =new Mission(100,"一护");
        List<Mission> list =new ArrayList<>();
        list.add(mission1);
        list.add(mission2);
        list.add(mission3);
        System.out.println(list.toString());
        Collections.sort(list, new Comparator<Mission>() {
            @Override
            public int compare(Mission o1, Mission o2) {
               int i=o1.getMissId()-o2.getMissId();//升序
                // int i=o2.getMissId()-o1.getMissId();降序
                return i;
            }
        });
        System.out.println(list.toString());
    }

}

在这里插入图片描述

posted @ 2018-12-20 23:05  narojay  阅读(1769)  评论(0编辑  收藏  举报