无法从数据类型转换为数组数据类型

时间:2019-06-13 17:53:06

标签: java

e=emp[i];处的错误

  

不能从一个雇员更改为另一个雇员[]

public static Employee[] getEmployeesWithLessThanAvgSalary(Employee[] emp) {
        Employee[] e;
        int i;int j;double total=0;
        for(j=0;j<emp.length;j++)
        {
            total=total+emp[j].getSalary();

        }
        double avg = total/emp.length;
        for(i=0;i<emp.length;i++)
        {
            if(emp[i].getSalary()<avg) 
            {
                e=emp[i];

            }

        }

        return e;
}

2 个答案:

答案 0 :(得分:2)

如错误消息所述,您不能将Array元素分配给数组对象

List<Employee> lowSalaryEmployees = new ArrayList<>();
if(emp[i].getSalary()<avg) 
  {
        lowSalaryEmployees.add(emp[i]);
  }

答案 1 :(得分:0)

您正在将一个employee对象分配给一个employee数组。 看起来您想分配这样的东西

for(i=0;i<emp.length;i++)
{
  if(emp[i].getSalary()<avg) 
  {
    e[i]=emp[i];
  }
}