Java 怎么对实现可比较接口的对象数组进行排序

2019年7月5日20:08:19Java 怎么对实现可比较接口的对象数组进行排序已关闭评论 316 934字阅读3分6秒

1.简介

Java 怎么对实现可比较接口的对象数组进行排序?——请看下文。

2.示例代码

/**
 * 版权所有 编程十万个怎么办(www.tah1986.com)
 */

 


import java.lang.reflect.Array;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class Main {
    public static void main(String[] argv) throws Exception {
        Object args = "tah1986.com";
        System.out.println(java.util.Arrays.toString(sortArray(args)));
    }

    
    @SuppressWarnings("unchecked")
    public static Object[] sortArray(Object... args) {
        List<Comparable> list = new ArrayList<Comparable>(args.length);
        for (Object o : args) {
            list.add((Comparable) o);
        }
        Collections.sort(list);
        return list.toArray(new Object[list.size()]);
    }

    
    @SuppressWarnings("unchecked")
    public static Object sortArray(Class arrayType, Object... args) {
        List<Comparable> list = new ArrayList<Comparable>(args.length);
        for (Object o : args) {
            list.add((Comparable) o);
        }
        Collections.sort(list);
        Object arrObject = Array.newInstance(arrayType, list.size());
        for (int i = 0; i < list.size(); i++) {
            Array.set(arrObject, i, list.get(i));
        }
        return arrObject;
    }
}

 
继续阅读
编程十万个怎么办