如何使用通用排序方法对多种类型的 ArrayLists 的 HashMap 进行排序?

我正在尝试对传递的 ArrayLists HashMap 进行选择排序,但我有点卡住了。我不确定如何使它成为适用于整数、双精度数和字符串的通用方法。我看过过去类似的问题,但我仍然不明白。感谢任何帮助或指导。


public static HashMap sort_list(HashMap lists) {


    HashMap sorted_lists = new HashMap();


    ArrayList<Integer> sorted_ints = new ArrayList<>();

    ArrayList<Double> sorted_doubles = new ArrayList<>();

    ArrayList<String> sorted_strings = new ArrayList<>();


    ArrayList list_of_ints = (ArrayList) lists.get("ints");

    ArrayList list_of_doubles = (ArrayList) lists.get("doubles");

    ArrayList list_of_strings = (ArrayList) lists.get("strings");


    //My sort code below (which doesn't work with this implementation)

    int min;


    for(int i = 0; i < arr.size() - 1; i++) {


        min = i;


        for(int j = i + 1; j < arr.size(); j++) {


            if(arr.get(j) < arr.get(min)) {

                min = j;

            }

        }


        int temp = arr.get(min);

        arr.set(min, arr.get(i));

        arr.set(i, temp);

    }

    // return hashmap

    return sorted_lists;

}


临摹微笑
浏览 253回答 1
1回答

蝴蝶刀刀

Java 已经提供了排序的工具Lists,提供了List实现Comparable接口中的元素。这叫做Collections.sort&nbsp;检查出来。这是进行“通用排序”的正确方法:完全按照Collections.sort要求实现适当的接口。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java