`
yaozhiqiang109
  • 浏览: 117427 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Comparable用法,集合对象中元素排序

    博客分类:
  • JAVA
 
阅读更多

对象实现Comparable接口,用Collections来对List中的对象按某个属性进行排序

 

由于String和Integer是已经实现了Comparable接口,所以可以直接用Collections来排序

 

public class StudentDO implements Serializable,Comparable<StudentDO> {

    private static final long serialVersionUID = -3468257295680073421L;
    private int id;
    private String name;
    private int sex;
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getSex() {
        return sex;
    }
    public void setSex(int sex) {
        this.sex = sex;
    }
    @Override
    public int compareTo(StudentDO o) {
        return this.getName().compareTo(o.getName());
    }
    
}
 
public class TestCollections {

    public static void main(String[] args) {
        List<StudentDO> studentList=new ArrayList<StudentDO>();
        StudentDO stu1=new StudentDO();
        stu1.setId(1);
        stu1.setName("list");
        stu1.setSex(2);
        StudentDO stu2=new StudentDO();
        stu2.setId(1);
        stu2.setName("array");
        stu2.setSex(2);
        StudentDO stu3=new StudentDO();
        stu3.setId(1);
        stu3.setName("collection");
        stu3.setSex(2);
        studentList.add(stu1);
        studentList.add(stu2);
        studentList.add(stu3);
        Collections.sort(studentList);
        System.out.println("=======升序================");
        for (StudentDO studentDO : studentList) {
            System.out.println(studentDO.getName());
        }
        Collections.reverse(studentList);
        System.out.println("=======降序================");
        for (StudentDO studentDO : studentList) {
            System.out.println(studentDO.getName());
        }
    }

}
0
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics