因此,我只是在尝试测试如何在自己的类型上使用compareTo方法,即使在最简单的情况下也无法使其起作用。我的代码(自我解释)如下(它在用户定义的类型TestType下从15-> 1创建了一个“数字”数组。我希望将其“自然”排序。

public class TestType implements Comparable<TestType> {

public int n;

TestType(int _n) {
    n = _n;
}

@Override
public int compareTo(TestType otherType) {
    return this.n < otherType.n ? -1 : (this.n > otherType.n ? 1 : 0);
}

public static void main(String[] args){
    TestType[] a = new TestType[15];
    for(int i = 0; i < 15; i++){
        a[i] = new TestType(15 - i);
        System.out.println(a[i].n);
    }
    a.sort();
}
}


如果您知道为什么它不起作用,请告诉我:)。

最佳答案

我认为您应该写Arrays.sort(a);

10-05 21:47