List 中已经存放实体类对象数据,如何根据实体类中某个属性值进行排序以后,按顺序存入list中。
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
public class SortTest{
  @SuppressWarnings("unchecked")
    public static void main(String args[] ){
          @SuppressWarnings("unused")
        ArrayList list=new ArrayList();
          list.add(new SortUserBean("小张","南京","21"));
          list.add(new SortUserBean("小孟","苏州","29"));
          list.add(new SortUserBean("小谢","南京","23"));
          list.add(new SortUserBean("小王","南通","12"));
          list.add(new SortUserBean("小顾","南京","06"));
          list.add(new SortUserBean("小陈","徐州","26"));
          list.add(new SortUserBean("小管","北京","19"));
          Collections.sort(list,new Comparator(){
              public int compare(Object o1, Object o2) {
用sort out
                  SortUserBean cb1 = (SortUserBean) o1;
                          SortUserBean cb2 = (SortUserBean) o2;
                          int code = 0;
                          code = Age()Age());
                          return code;
                      }
              });
          for(int i=0;i<list.size();i++){
              SortUserBean user=((i);
              System.out.Age());
              System.out.Name());
            System.out.Address());
    }
      }
    }
输出结果:
06小顾南京
12小王南通
19小管北京
21小张南京
23小谢南京
26小陈徐州
29小孟苏州
Comparator是个接口,可以重写他的compare()和equals()这两个方法,也就是说比较的方法,如果是null的话,就是使用元素的自然顺序,如1,2,4,5,9,8,7,就是1,2,
4,5,7,8,9这样,字母也可以
compare(a,b)方法:根据第一个参数小于、等于或大于第二个参数分别返回负整数、零或正整数
equals(obj)方法:仅当指定的对象也是一个 Comparator,并且强行实施与此 Comparator 相同的排序时才返回 true