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

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());
            }
        }
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值