JAVA-对LIST的bean中的某属性排序

来源:互联网 发布:pump it相似 编辑:程序博客网 时间:2024/05/20 16:34

1list里面存有JAVAbean,javabean中有id属性,对list按照javabean中的id大小进行排序。

通过collection的sort方法解决

1.首先Bean类要实现Comparable接口

/** *  bean 中包含两个属性 -name 以及 value *  包括属性的get,set方法,还有构造方法,以及用于排序的compareTo方法 */public class JavaBean implements Comparable<JavaBean> { private String name; private Integer value; public JavaBean(String name, Integer value) {  this.name = name;  this.value = value; } public String getName() {  return name; } public void setName(String name) {  this.name = name; } public Integer getValue() {  return value; } public void setValue(Integer value) {  this.value = value; } // 实现Comparable接口中的这个方法 public int compareTo(JavaBean javaBean) {  //从大到小排序  //return javaBean.getValue().compareTo(this.getValue());  //从小到大排序  return this.getValue().compareTo(javaBean.getValue()); }}

测试类

import java.util.ArrayList;import java.util.Collections;import java.util.List;public class javaBeanList {        public static void main(String args[]){            List<JavaBean> l = new ArrayList<JavaBean>();            JavaBean a = new JavaBean("a", 100);            JavaBean b = new JavaBean("b", 19);            JavaBean c = new JavaBean("c", 20);            JavaBean d = new JavaBean("d", 5);            l.add(a);            l.add(b);            l.add(c);            l.add(d);                //以上为构造测试数据            Collections.sort(l);             for(JavaBean i:l){                System.out.println(i.getName()+" "+i.getValue());            }        }}
原创粉丝点击