java中Comparator的用法(用于集合对象或数组对象进行排序)

来源:互联网 发布:手机淘宝装修效果图 编辑:程序博客网 时间:2024/06/06 09:28
package Comparator;


public class Step{
    /** 处理时间 */
     int acceptTime ;
    /** 快件所在地点 */
     int acceptAddress ;


    public Step() {
        super();
    }
    public Step(int i, int num) {
        super();
        this.acceptTime = i;
        this.acceptAddress = num;
    }


   

}






------------------------------main---------------------------

package Comparator;


import java.util.Arrays;
import java.util.Comparator;




/**
 * @author Administrator
 *重写List的sort方法中的Comparator接口,从新定义排列顺序,及自定义类型,按什么类型排列
 *用于集合对象或数组对象进行排序
 */
public class Test {
    static Step arr[];
    static int n;
public static void main(String[] args) {
   arr=new Step[3];
        arr[0]=new Step(1,2);
        arr[1]=new Step(1,2);
        arr[2]=new Step(3,2);
        
        Arrays.sort(arr,new Comparator<Step>(){
@Override
public int compare(Step o1, Step o2) {
// TODO Auto-generated method stub
return(o1.acceptTime-o2.acceptTime);}//o1-o2从小往大排按照acceptTime
                                    //o2-o1从大往大排按照acceptAddress
});
        for(int i=0;i<3;i++){
        System.out.println(arr[i].acceptTime+" "+arr[i].acceptAddress);
        }
}


}

0 0