1

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);
    }

このようにcompareメソッドを呼び出そうとしていますが、これが正しいかどうかはわかりません。

    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);

どんな助けでも大歓迎です。ありがとう!

4

2 に答える 2

2

Arrays.sort(emp);代わりに試してください。

于 2012-09-17T16:38:52.110 に答える
2

Arrays.sort(emp);sArraysこれにより、Arrays#sortメソッドが呼び出されます。

于 2012-09-17T16:38:59.687 に答える