Java - 使用另一个类的变量作为方法参数

标签 java arraylist

在我的 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/

相关文章:

java - 我如何按字母顺序对这个数组列表进行排序?

java - 如何要求用户输入字符串直到用户完成?

java - 我的 ArrayList 无法识别我添加到列表中的内容

java - 如何从另一个类(class)运行一个类(class)

java - 将整数添加到 ArrayList 时

Java从十进制转换为8位二进制

java - 当发生特殊异常时是否可以创建 Java 转储?

java - 无法使用 AJAX 响应作为文件名(而非内容)

java - 将图像从android java发送到pc上的c#服务器

java - 在静态嵌套类中定义常量