(List)已知有一个Worker 类如下:

public class Worker

{ private int age;

private String name;

private double salary;

public Worker (){}

public Worker (String name, int age, double salary)

{ this.name = name;

this.age = age;

this.salary = salary; }

public int getAge() { return age; }

public void setAge(int age) { this.age = age; }

public String getName() { return name; }

public void setName(String name) { this.name = name; }

public double getSalary(){ return salary; }

public void setSalary(double salary){ this.salary = salary; }

public void work(){

System.out.println(name + “ work”); } }

完成下面的要求

1) 创建一个List,在List 中增加三个工人,基本信息如下:

姓名 年龄 工资

zhang3 18 3000

li4 25 3500

wang5 22 3200

2) 在li4 之前插入一个工人,信息为:姓名:zhao6,年龄:24,工资3300

3) 删除wang5 的信息

4) 利用for 循环遍历,打印List 中所有工人的信息

5) 利用迭代遍历,对List 中所有的工人调用work 方法。

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List; public class List2 { public static void main(String[] args)
{
List<Worker> list = new ArrayList<>() ; list.add(new Worker("zhang3" , , ) ) ;
list.add(new Worker("li4" , , ) ) ;
list.add(new Worker("wang5" , , ) ) ; System.out.println("开始时工人状况为:");
for(Worker x : list)
{
System.out.println(x+" ");
} System.out.println("li4之前插入zhao6:"); list.add(, new Worker("zhao6" , , )); for(Worker x : list)
{
System.out.println(x+" ");
} System.out.println("删除wang5:"); list.remove() ; for(Worker x : list)
{
System.out.println(x+" ");
} System.out.println("迭代:"); Iterator<Worker> it = list.iterator() ; while(it.hasNext())
{
Worker w = it.next() ; w.work();
}
} } class Worker
{
private int age ;
private String name ;
private double salary ; public Worker( )
{ } public Worker(String name , int age , double salary )
{
this.name = name ;
this.age = age ;
this.salary = salary ;
} public int getAge() {
return age;
} public void setAge(int age) {
this.age = age;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public double getSalary() {
return salary;
} public void setSalary(double salary) {
this.salary = salary;
} public void work( )
{
System.out.println(name + " work");
} @Override
public String toString() {
return name+" "+age+" "+salary;
} }

随机推荐

  1. linux安装openjdk

    使用yum查找jdk: yum search java | grep jdk 执行安装命令:yum install java-1.8.0-openjdk

  2. 00.Python中下划线的5种含义

    转自这里 先放上 简短的"速查表",罗列了五种Python下划线模式的含义: 模式 举例 含义 单前导下划线 _var 命名约定,仅供内部使用.通常不会由Python解释器强行执行 ...

  3. PHP websocket之聊天室实现

    PHP部分 <?php error_reporting(E_ALL); set_time_limit(0);// 设置超时时间为无限,防止超时 date_default_timezone_set ...

  4. C#学习笔记_09_构造方法/函数

    09_构造方法/函数 代码案例 作用:构造函数主要是用来创建对象时为对象赋初值来初始化对象:总与new运算符一起使用在创建对象的语句中,例如A a=new A(); 特点: 构造函数具有和类一样的名称 ...

  5. 746. Min Cost Climbing Stairs(动态规划)

    On a staircase, the i-th step has some non-negative cost cost[i] assigned (0 indexed). Once you pay ...

  6. bx值

    bx值 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others) Problem De ...

  7. ES解除索引只读限制

    kibana dev Tools 执行:PUT _settings    {    "index": {    "blocks": {    "rea ...

  8. 刷新PHP缓冲区

    为你的站点加速_php技巧 在当前 PHP 版本的默认配置下,“输出缓冲(Output Buffering)”是被打开的.旧版本则不是这样,在旧版本的 PHP 中,字符串在每次被输出的时候(通过 ec ...

  9. A - Number Sequence

    Given two sequences of numbers : a11, a22, ...... , aNN, and b11, b22, ...... , bMM(1 <= M <= ...

  10. [LeetCode]Valid Sudoku解题记录

    这道题考查对二维数组的处理,哈希表. 1.最自然的方法就是分别看每一个数是否符合三个规则.所以就须要对应的数据结构来 记录这些信息,判定是否存在.显然最先想到用哈希表. 2.学会把问题抽象成一个个的子 ...