当前位置: 首页 > article >正文

Problem E: List练习

1.题目描述

运用List完成下面的要求: 
1) 创建一个List,在List中增加三个工人,基本信息如下:
姓名 年龄 工资 
Tom 18 3000 
Peter 25 3500 
Mark 22 3200 
2) 插入一个工人,信息为:姓名:Robert,年龄:24,工资3300 
3) 删除姓名为"Mark"的工人 
4) 利用for 循环遍历,打印List中所有工人的信息 
5) 利用迭代遍历,对List中所有的工人调用work方法。 


完成下列代码:
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

class Worker{
        private int age;
        private String name;
        private double salary;
        public Worker(String name,int age,double salary)

// 你的代码嵌入这里


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,"Mark");
            wh.print(ls);
            wh.callwork(ls);
        }
}
 

2.输出描述

Workers info:Tom 18 3000.0
Workers info:Peter 25 3500.0
Workers info:Robert 24 3300.0
Tom work
Peter work
Robert work

3.代码实现

1.提交代码

{this.name = name;this.age = age;this.salary = salary;}public void work() {System.out.println(this.name + " work");}// Getter 方法用于访问属性public String getName() {return name;}public int getAge() {return age;}public double getSalary() {return salary;}
}class workerHelper {// 添加初始三个工人public void add(List<Worker> list) {list.add(new Worker("Tom", 18, 3000));list.add(new Worker("Peter", 25, 3500));list.add(new Worker("Mark", 22, 3200));}// 插入一个工人 Robertpublic void append(List<Worker> list) {list.add(new Worker("Robert", 24, 3300));}// 删除姓名为 mark 的工人public void del(List<Worker> list, String name) {list.removeIf(worker -> worker.getName().equals(name));}// 使用 for 循环打印所有工人信息public void print(List<Worker> list) {for (Worker worker : list) {System.out.println("Workers info:" + worker.getName() + " " + worker.getAge() + " " + worker.getSalary());}}// 使用 Iterator 遍历并调用 work 方法public void callwork(List<Worker> list) {Iterator<Worker> iterator = list.iterator();while (iterator.hasNext()) {Worker worker = iterator.next();worker.work();}}
}

2.完整代码

 

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;class Worker {private int age;private String name;private double salary;public Worker(String name, int age, double salary) {this.name = name;this.age = age;this.salary = salary;}public void work() {System.out.println(this.name + " work");}// Getter 方法用于访问属性public String getName() {return name;}public int getAge() {return age;}public double getSalary() {return salary;}
}class workerHelper {// 添加初始三个工人public void add(List<Worker> list) {list.add(new Worker("Tom", 18, 3000));list.add(new Worker("Peter", 25, 3500));list.add(new Worker("Mark", 22, 3200));}// 插入一个工人 Robertpublic void append(List<Worker> list) {list.add(new Worker("Robert", 24, 3300));}// 删除姓名为 mark 的工人public void del(List<Worker> list, String name) {list.removeIf(worker -> worker.getName().equals(name));}// 使用 for 循环打印所有工人信息public void print(List<Worker> list) {for (Worker worker : list) {System.out.println("Workers info:" + worker.getName() + " " + worker.getAge() + " " + worker.getSalary());}}// 使用 Iterator 遍历并调用 work 方法public void callwork(List<Worker> list) {Iterator<Worker> iterator = list.iterator();while (iterator.hasNext()) {Worker worker = iterator.next();worker.work();}}
}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, "Mark");wh.print(ls);wh.callwork(ls);}
}

http://www.lryc.cn/news/2379683.html

相关文章:

  • 卷积神经网络进阶:转置卷积与棋盘效应详解
  • 用 Kotlin 脚本(KTS)重塑 Android 工程效能:2000 字终极实践指南
  • 2025年5月13日第一轮
  • HarmonyOs开发之———使用HTTP访问网络资源
  • 小结:Android系统架构
  • 单物理机上部署多个TaskManager与调优 Flink 集群
  • 基于C#的MQTT通信实战:从EMQX搭建到发布订阅全解析
  • VUE3_ref和useTemplateRef获取组件实例,ref获取dom对象
  • ISP中拖影问题的处理
  • C++.备考知识点
  • SQLMesh 模型管理指南:从创建到验证的全流程解析
  • HarmonyOS AVPlayer 音频播放器
  • ⭐️白嫖的阿里云认证⭐️ 第二弹【课时1:提示词(Prompt)技巧】for 「大模型Clouder认证:利用大模型提升内容生产能力」
  • Filament引擎(一) ——渲染框架设计
  • c++从入门到精通(六)--特殊工具与技术-完结篇
  • JDK 1.8 全解析:从核心特性到企业实战的深度实践
  • MCP实战:在扣子空间用扣子工作流MCP,一句话生成儿童故事rap视频
  • 分布式微服务系统架构第134集:笔记1运维服务器经验,高并发,大数据量系统
  • 【SSL证书系列】客户端如何验证https网站服务器发的证书是否由受信任的根证书签发机构签发
  • SpringBoot基础项目搭建
  • Rust 学习笔记:关于 HashMap 的练习题
  • C语言-8.数组
  • Kotlin Android单元测试MockK指南
  • C# lock
  • 《算法导论(第4版)》阅读笔记:p83-p85
  • Go 后端中双 token 的实现模板
  • 【拥抱AI】Deer-Flow字节跳动开源的多智能体深度研究框架
  • 第六天——贪心算法——字符串分隔
  • Python 条件语句详解
  • 前端获取用户的公网 IP 地址