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());
            }
        }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章