在我的 Main
类中,我有这段代码:
UUID uniqueID;
public void createEmployee(){
uniqueID = UUID.randomUUID();
// ...
}
在我的类 Corporation
中,有一个名为 promoteEmployee
的方法,该方法应该接收 uniqueID 作为参数。这可能吗?如果可能的话,如何实现?
public void promoteEmployee(uniqueID){
// it doesn't recognize uniqueID as argument
}
我还有一个方法sortEmployees
,它按字母顺序对ArrayList进行排序,如果两个名字相等,则应先打印出工资较高的员工。它按字母顺序对列表进行排序,但不检查薪水是否更大。我需要改变什么?
ArrayList<Employee> employees = new ArrayList<Employee>();
public void sortEmployees(){
Collections.sort(employees, (p1, p2) -> p1.name.compareTo(p2.name));
for(Employee employee: employees){
Comparator.comparing(object -> employee.name).thenComparingDouble(object -> employee.grossSalary);
System.out.println("ID: " + employee.ID + END_OF_LINE + "Name: "+employee.name + END_OF_LINE + "Salary: " + employee.grossSalary);
System.out.println(""); // just an empty line
}
}
最佳答案
将方法更改为有效的java代码
public void promoteEmployee(UUID uniqueID){
但由于它甚至看起来是一个字段,为什么要传递该值呢?
至于排序参见 Implementing Java Comparator
关于Java - 使用另一个类的变量作为方法参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46678310/