Andy 胡

导航

Java中的升序和降序

package ah;
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
// Java降序不容易
// 无法对基本类型进行降序排列
public class TestJava升序降序 {
    public static void printArr(String _msg, Integer _arr[]) {
        System.out.println(_msg + " 输出数组:");
        for (Integer i : _arr) {
            System.out.print(i);
        }
        System.out.println();
    }
    public static void 升序() {
        int _arr[] = { 5, 3, 1, 2, 4 };
        // 类,或包装类
        Arrays.sort(_arr);
        System.out.println("升序 输出数组:");
        for (int i : _arr) {
            System.out.print(i);
        }
        System.out.println();
    }
    public static void 降序sort版() {
        Integer _arr[] = { 5, 3, 1, 2, 4 };
        // 类,或包装类
        Arrays.sort(_arr, new Comparator<Integer>() {
            @Override
            public int compare(Integer o1, Integer o2) {
                return o2 - o1;
            }
        });
        printArr("降序sort版", _arr);
    }
    public static void 降序转置版() {
        Integer _arr[] = { 5, 3, 1, 2, 4 };
        Arrays.sort(_arr);
        List<Integer> asList = Arrays.asList(_arr);
        // 类,或包装类
        Collections.reverse(asList);
        printArr("降序 转置版", _arr);
    }
    public static void main(String[] args) {
        升序();
        降序sort版();
        降序转置版();
    }
}
class DescComparator implements Comparator<Integer> {
    @Override
    public int compare(Integer o1, Integer o2) {
        return o2 - o1;
    }
}

 

posted on 2018-01-13 18:53  talkwah  阅读(8929)  评论(0编辑  收藏  举报