-2

我在下面的代码中有 int cannot be dereferenced 错误,我在这里有 //error。我很困惑,因为变量 b 用于在后面的行中引用 empl 数组中的一个点,而不会显示为错误。那么我该如何解决这个问题,为什么会产生错误?我将不胜感激任何帮助。示例代码也会很棒,因为这似乎是我学习得最好的方式。谢谢!

public static void bubbleSort(Employee[] empl) {
    for (int a = 1; a < empl.length; a++) 
    {
        for (int b = 0; b < empl.length - a; b++) 
        {
            if (((empl[b].//error is here
                    getEmployeeNumber()).compareTo
                   ((empl[b + 1].getEmployeeNumber()))) > 0) 
            {
               // swap employees[b] with employees[b+1]
               Employee temp = empl[b];
               empl[b] = empl[b + 1];
               empl[b + 1] = temp;
            }
        }
    }
}

编辑:欢迎任何其他按员工编号对数组进行排序的建议。

4

1 回答 1

3

getEmployeeNumber()显然返回一个int.

int是原始类型,而不是对象。
因此,您不能调用类似compareTo()的方法。

于 2012-09-23T03:45:47.257 回答