Arrays.sort支持自定義排序嗎

小樊
97
2024-06-27 09:31:22

是的,Arrays.sort方法支持自定義排序。可以通過(guò)傳入一個(gè)Comparator對(duì)象來(lái)定義自定義的排序規(guī)則。Comparator對(duì)象包含一個(gè)compare方法,可以根據(jù)需要對(duì)數(shù)組中的元素進(jìn)行比較并排序。具體的使用方法如下:

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

public class CustomSortExample {
    public static void main(String[] args) {
        Integer[] numbers = {5, 2, 8, 1, 6};

        // 使用自定義的Comparator對(duì)象定義排序規(guī)則
        Arrays.sort(numbers, new Comparator<Integer>() {
            @Override
            public int compare(Integer o1, Integer o2) {
                // 按照數(shù)字的大小進(jìn)行降序排序
                return o2.compareTo(o1);
            }
        });

        // 打印排序后的數(shù)組
        System.out.println(Arrays.toString(numbers));
    }
}

在上面的例子里,我們使用了一個(gè)匿名內(nèi)部類來(lái)創(chuàng)建一個(gè)Comparator對(duì)象,定義了按照數(shù)字的大小進(jìn)行降序排序的規(guī)則。然后將這個(gè)Comparator對(duì)象傳入到Arrays.sort方法中,來(lái)對(duì)數(shù)組進(jìn)行排序。

0