我正在处理我正在处理的链表。我已经创建了自己的Employee对象链表。每个Employee对象都包含您的所有常规数据,如姓名,地址,联系信息,工资,就业年限等。
我想要做的是在我的列表类中创建一个方法,它将修改列表中的所有对象。例如,我可以将“就业年限”增加1,或者我可以将列表中所有员工的“工资”增加5%,以便给每个人加薪。
答案 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类实现。