我在理解和使用比较器时遇到问题我被问到以下问题:比较器实现
创建一个CompanyDataBase类。
public java.util.ArrayList sortByName()您需要为此使用Comparator对象。
我在班上写了这个方法。
@Override
public int sortByName(Employee name1, Employee name2)
{
return (int) (name1.super.getName() - name2.super.getName());
}
而这种单独的比较等级:
进口的java.util。*;
public class EmployeeNameComparator implements Comparator<Employee>
{
public int compare(Employee first, Employee second)
{
return (int) (first.super.getName() - second.super.getName());
}
}
但我显然不会是使用相同的 “回报(INT)(name1.super.getName() - name2.super.getName());”这两个类的代码行......但我不知道如何在sortByName方法中实现它。
我在一个单独的Employee类中使用compareTo Comparator接口来调用Comparator对象的重载使用。
任何帮助,建议,代码行将非常感谢!
感谢您的回应。你的意思是我在比较器中的方法应该如下所示:'public int compare(Employee first,Employee second) { return first.super.getName()。compareTo(second.super.getName()); - }' – Mark 2014-11-22 16:32:05
是的,这是正确的 – MeBigFatGuy 2014-11-22 16:33:27
谢谢,感谢! :) – Mark 2014-11-22 16:35:47