Java对数组对象进行排序

下面是一组对数组对象进行排序的代码:

package com.sun;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;

public class Test09 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        
        Dog dog[] = new Dog[3];
         dog[0]= new Dog("wangchai",10);
         dog[1]= new Dog("laifu",9);
         dog[2]= new Dog("ww",20);
        Arrays.sort(dog);

        for(int i=0;i<dog.length;i++){
            System.out.println(dog[i].name);
        }
    }

}

class Dog implements  Comparable{
    public Integer tizhong = 0;
    public String name = "";
    public Dog(String name, int tizhong) {
        this.name = name;
        this.tizhong = tizhong;
    }
    //按年龄排序
    @Override
/*    public int compareTo(Object o) {
        // TODO Auto-generated method stub
        Dog s=(Dog)o;
        return tizhong>s.tizhong?1:(tizhong==s.tizhong?0:-1);
    }*/
    //按名字排序
/*    public int compareTo(Object o)
       {
        Dog s=(Dog)o;
             int result=name.compareTo(s.name);
             return result;
       }*/
    //如果先按数字再按字符排序,则这样写:
     public int compareTo(Object o)
      {
        Dog s=(Dog)o;
             int result= tizhong>s.tizhong?1:(tizhong==s.tizhong?0:-1);
              if (0==result){
                  result=name.compareTo(s.name);
               }
             return result;
      }

}
原文地址:https://www.cnblogs.com/sunxun/p/5313057.html