(Java)将Char数组按其反向字母顺序排序的方法

时间:2017-01-22 17:11:13

标签: java arrays sorting

为了在同一页面上,我不打算将String数组按其反向字母顺序排序,我期待为Char数组执行此操作。

这是我尝试过的代码:

import java.util.Arrays;
public class ReverseSortDemo {
    public static void main(String[] args){
        char[] unorderedLetters; 
        unorderedLetters = new char[]{'b', 'm', 'z', 'a', 'u'};
        reverseSort(unorderedLetters); 
        for (int i = 0 ; i < unorderedLetters.length; i++ )
            System.out.println(unorderedLetters[i]);
    }

    //method that sorts a char array into its reverse alphabetical order
    public static void reverseSort(char[] values){

        Arrays.sort(values);
        for (int i = values.length - 1; i >= 0; i--) {
            values[values.length-1-i]=values[i];
        }
    }

}

我得到的输出是:

z
u
m
u
z

但是,我们想要的输出就像你们所知道的那样:

z
u
m
b
a

那么,我该如何处理呢?有没有办法,如果可能的话,还有一种更简单的方法(例如内置方法),我不知道,所以我可以开始使用我的代码变得懒惰?

1 个答案:

答案 0 :(得分:-3)

您可以尝试sort课程中的java.util.Arrays方法。

Arrays.sort(values, Collections.reverseOrder());

此处values是您的数组。