我试图用Java对对象数组进行排序。我创建了例如:
Employee[] hourly = new Employee[];
然后让用户输入name
,id
,hourly pay
的值。比如问
System.out.println("Please enter employee name, id and hourly pay");
然后将name
存储为id
int
和hourly pay
为双倍。从那里我需要按小时按升序对对象数组Employee
进行排序。
我想在没有比较器或数组列表的情况下这样做。
答案 0 :(得分:1)
我想在没有比较器或数组列表的情况下这样做。
您可以让您的Employee类实现Comparable
,然后使用Arrays.sort(employeeArray);
public class Employee implements Comparable<Employee>
{
//Constructors and other members not shown
@Override
public int compareTo(Employee e){
return (getHourlyPay() - e.getHourlyPay());
}
}
Arrays.sort(employeeArray);
或强>
实施您自己的排序方法,您可以根据每个员工对象的每小时工资进行排序。排序方式与排序整数数组类似。
例如,而不是写..
if (array[i] < min) //where array[i] is of type int
你将写作..
if(employee[i].getHourlyPay() < min)