修改链表中的所有对象 - java

时间:2014-02-03 21:39:24

标签: java linked-list

我正在处理我正在处理的链表。我已经创建了自己的Employee对象链表。每个Employee对象都包含您的所有常规数据,如姓名,地址,联系信息,工资,就业年限等。

我想要做的是在我的列表类中创建一个方法,它将修改列表中的所有对象。例如,我可以将“就业年限”增加1,或者我可以将列表中所有员工的“工资”增加5%,以便给每个人加薪。

3 个答案:

答案 0 :(得分:1)

所以你必须在List

中的每个对象上调用change方法
LinkedList<Employee> employees = new ArrayList<Employee>();

public void increaseYearOfEmployment() {
    for (Employee e : employees) 
            e.yrsEmployed++;   //  instance variable
}

public void increaseSalary() {
    for (Employee e : employees) 
            e.yrsSalary++;       //  instance variable
}

答案 1 :(得分:0)

如果Employee字段未设置为private:

LinkedList<Employee> employees; //employee instance variable

...

public void increaseYrsEmployment() {
    for (Employee e : employees) e.yrsEmployed++;
}

如果Employee字段设置为private,则可以将getter和setter方法添加到Employee类,以允许访问和修改字段。

答案 2 :(得分:0)

理想情况下,您将以listNode.getEmployee()的形式获得ListNode类的get方法,然后您可以将该对象视为Employee对象。例如:

ListNode temp = first;
while (temp != null){
    temp.getEmployee().incrementYears(1);
    temp = temp.getNext();
}

但很难说我们是否没有ListNode和Employee类实现。