繁体   English   中英

使用Java比较按名称排序对象

[英]Sorting object by name using Java comparable

我是Java的初学者,我在使用Comparable按名称对Employee对象进行排序时遇到问题。 我已经阅读了Java文档,没有太多运气。 我正在寻找一些指导,让我走上正轨。

public class Employee implements Comparable<Employee> {

    private String name ="No name yet";
    Task task;

    public Employee(String setName) {    
        name = setName;
    }
...
    public int compareTo(Employee object) {
        Employee emp = (Employee) object;
        return this.name.compareTo(emp.name);
    }

我试图像这样调用比较方法,但我不确定这是对的。

    public static void main(String[] args){
    Employee[] emp = new Employee[4];
        emp[0] = new HourlyEmp("Green", 22.50, 40);
        emp[1] = new ExemptEmp("White", 1000.00);
        emp[2] = new ExemptEmp("Black", 1100.00);
        emp[3] = new ExemptEmp("Brown", 1346.15);

    Array.sort(emp); <<--ERROR: The method sort(Employee[]) is undefined 
                                for the type  Array

    printReport("Employee list sorted on names", emp);

任何帮助将不胜感激。谢谢!

试试Arrays.sort(emp); 代替。

它是Arrays.sort(emp); ,在Arrays有一个s 这将调用Arrays#sort方法

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM