如何在ArrayList中对用户定义的对象进行排序



可能的重复:
如何通过属性对对象的数组清单进行排序?

    public static void main(String args[]){
            List<Emp> unsortList = new ArrayList<Emp>();
            unsortList.add(new Emp(109));
            unsortList.add(new Emp(106));
            unsortList.add(new Emp(103));
            unsortList.add(new Emp(108));
            unsortList.add(new Emp(101));
    }
public class Emp {
Integer eid;
public Emp(Integer eid) {
    this.eid=eid;
}
}

emp是用户定义的类&amp;存储在arraylist中。如何排序arraylist。

查看集合#sort(列表列表,比较器C)

它允许您提供自己的Comparator,可以用来定义如何匹配对象

实现Comparable<Emp>并使用Collections.sort对列表进行排序

public class Emp implements Comparable<Emp> {
    Integer eid;
    public Emp(Integer eid) {
        this.eid = eid;
    }
    @Override
    public int compareTo(Emp o) {
        return eid.compareTo(o.eid);
    }
}

最新更新