我正在尝试建立一个新的排序标准,在这种情况下是按名称.当我调用排序方法时,我遇到错误...
这是包"package"中的分隔类(SortByName):
----------------------- CLASS SortByName ------------------------- -
包装;
import java.util.*;
公共抽象类SortByName实现Comparator {
public int compareTo(Object o1, Object o2){
String n1 = ((Ficha)o1).getName();
String n2 = ((Ficha)o2).getName();
return n1.compareTo(n2);
Run Code Online (Sandbox Code Playgroud)
然后在ActionPerformed事件中我有这个:
----------------在行动事件按钮----------------------------
Collections.sort(list,new SortByName());
我尝试在类定义(SortByName)中更改"抽象"类型,但它遵守不覆盖compareTo()方法.
谢谢阅读.
您必须实现的方法是compare,而不是compareTo.
抽象类无法实例化.
此外,Comparator是通用的,所以你最好做以下事情:
public class SortByName implements Comparator<Ficha>{
public int compareTo(Ficha f1, Ficha f2){
String n1 = f1.getName();
String n2 = f2.getName();
return n1.compareTo(n2);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3495 次 |
| 最近记录: |