Problem Description
运用List完成下面的要求:
- 创建一个List,在List中增加三个工人,基本信息如下:
姓名 年龄 工资
Tom 18 3000
Peter 25 3500
Mark 22 3200 - 插入一个工人,信息为:姓名:Robert,年龄:24,工资3300
- 删除序号为2的工人
- 利用for 循环遍历,打印List中所有工人的信息
- 利用迭代遍历,对List中所有的工人调用work方法。
Output Description
Workers info:Tom 18 3000.0
Workers info:Peter 25 3500.0
Workers info:Robert 24 3300.0
Tom work
Peter work
Robert work
Java代码
Worker Class
public class Worker{
private String name;
private int age;
private double salary;
public Worker()String name, int age, doubel salary){
super();
this.name = name;
this.age = age;
this.salary = salary;
}
public Worker(){
super();
}
public void setName(String name){
this.name = name;
}
public String getName(){
return name;
}
public void setAge(int age){
this.age = age;
}
public int getAge(){
return age;
}
public void setSalary(double salary){
this.salary = salary;
}
public double getSalary(){
return salary;
}
@Overrude
public String toString(){
return name+" "+age+" "+salary;
}
}
workerHelper Class
publiv class workerHelper{
`public void add(List<Worker> ls){
Worker wk1 = new Worker("Tom", 18, 3000);
Worker wk2 = new Worker("Peter", 25, 3500);
Worker wk3 = new Worker("Mark", 22, 3200);
ls.add(wk1);
ls.add(wk2);
ls.add(wk3);
}
public void append(List<Worker> ls>{
Worker wk = new Worker("Robert", 24, 3300);
ls.add(wk);
}
public void del(List<Worker> ls, int index){
ls.remove(index);
}
public void del(List<Worker> ls, String name){
Iterator<Worker> it = ls.iterator();
while(it.hasNext()){
if(it.next().getName().equals(name)){
it.remove();
}
}
}
public void print(List<Worker> ls){
for(int i = 0; i < ls.size(); i++) {
System.out.println("Workers info:"+ls.get(i));
}
}
public void callwork(){
Iterator<Worker> it = ls.iterator();
while(it.hasNext()) {
Worker wk = it.next();
System.out.println(wk.getName()+" work");
}
}
}
Main Class
public class Main(){
public static void main(String[] args){
workerHelper wh = new workerhelper();
List<Worker> ls = new ArrayList<>();
wh.add(ls);
wh.append(ls);
wh.del(ls,2);
wh.print(ls);
wh.callwork(ls);
}
}