Java 与方法相比,对列表进行排序
我有一个问题,我想对一个列表进行排序。 我想写一个compareTo方法,但我想把to变量赋给compareTo方法,如下所示Java 与方法相比,对列表进行排序,java,Java,我有一个问题,我想对一个列表进行排序。 我想写一个compareTo方法,但我想把to变量赋给compareTo方法,如下所示 public int compareTo(Object object, LinkedList<Integer> list) { ... } public int compareTo(对象对象,链接列表){ ... } 有可能这样做吗? 感谢您的帮助否,您不能在可比界面中更改抽象方法的方法签名。在实现compariable接口时,您需要实现 int com
public int compareTo(Object object, LinkedList<Integer> list) {
...
}
public int compareTo(对象对象,链接列表){
...
}
有可能这样做吗?
感谢您的帮助否,您不能在
可比
界面中更改抽象方法的方法签名。在实现compariable
接口时,您需要实现
int compareTo(T o)
如果要使用内置排序函数,则必须使用可比较的接口
所以答案是否定的。如果你想访问一个额外的对象,不要把它作为类中的变量。这不是合作者的作用吗
List<Integer> list = new ArrayList<Integer>();
Collections.sort(list, new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return o1 - o2;
}
});
List List=new ArrayList();
Collections.sort(list,newcomparator(){
@凌驾
公共整数比较(整数o1,整数o2){
返回o1-o2;
}
});
您可以在同一类中使用列表
实现可比
接口:
class A implements Comparable<Integer> {
List<Integer> list = new ArrayList<Integer>();
@Override
public int compareTo(Integer o) {
return compareTo(o, list);
}
private int compareTo(Integer o, List<Integer> list) {
return ...; // Your comparison here
}
}
A类实现了可比性{
列表=新的ArrayList();
@凌驾
公共整数比较o(整数o){
返回compareTo(o,list);
}
私有整数比较(整数o,列表){
return…;//在此处进行比较
}
}
您可以使用override comparetto-方法和类中的变量as字段。哦,还有其他可能性吗?我建议您需要重新审视您的设计,看看您想做什么。问题是我需要另一个列表。我就是这样做的,但它不起作用。。。第二个列表在另一个类中填充,如果我想让第二个列表为空,为什么有两个方法?您可以在第一种方法中使用列表。当然可以。这只是为了证明所期望的可能性。