Java数组排序方法

关于java中数组的排序问题
1.ArrayList自带函数
2.Arrays.sort+自定义排序方法

package Method;
/*
* java中数组排序问题
*
* */
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        /*
        Arraylist自定义排序
        ArrayList<Integer> arr=new ArrayList<>();
        for (int i = 0; i < 10; i++) {
            arr.add(i+1);
        }
        List<Integer> a= new ArrayList<>();
        a=arr.subList(0,5);
        a.sort(Comparator.reverseOrder());
        System.out.println(a);
        System.out.println(arr.toString());

        */



        //Arrays.sort方法+Comparator实现自定义排序
        Integer[] arr={5,4,7,9,2,12,54,21,1};

        //匿名函数
        Arrays.sort(arr,new Comparator<Integer>(){
            public int compare(Integer a,Integer b){
                return b-a;
            }
        });
        System.out.println(Arrays.toString(arr));

        //新建类实现Comparator接口,new一个对象传入sort函数中
        MyComparator mycmp=new MyComparator();
        Arrays.sort(arr,mycmp);
        System.out.println(Arrays.toString(arr));

    }
}
class MyComparator implements Comparator<Integer>{
    public int compare(Integer a,Integer b){
        return a-b;
    }
}

posted @ 2021-04-19 16:34  withwind777  阅读(337)  评论(0)    收藏  举报