如何为自定义对象实现比较方法

How To implement Compare to method for custom object

在 java 中,我有一个自己的数组列表(已实现),我有一个排序方法,所以我需要 'compareTo' 方法,这就是我实现 Comparable 并使 class 抽象的原因。但是,如果我使用 main 中的数组列表,我必须实现与方法的比较。但我不明白我如何实现这个。(我有一个限制,例如,如果我有一个 'order' class 的数组列表我无法按顺序实现可比较 class)

数组列表

public abstract class ArrayList<T>  implements  Comparable

内部排序函数

    Comparable left=(Comparable)L[i];
    Comparable right=(Comparable)R[j];
    for(int k=start;k<=end;k++)
    {
        if(left.compareTo(right)<=0)
        {
            array[k]=L[i];
            i++;
            left=(Comparable)L[i];

        }

来自主要

ArrayList<Order> order = new ArrayList<Order>() {
        @Override
        public int compareTo(Object o) {
            if(this)// but this main is not order class this is arraylist class
            return 0;
        }
    };

为什么您的 ArrayList 实施 Comparable?你想比较 2 个列表吗? 如果要比较或排序列表的元素,元素应该是 Comparable,但列表本身不是。

您还可以看看以下问题:How to use Comparator in Java to sort 然后你必须为你的 class Order(不是接口 Comparable

实现一个 Comparator