PTA-根据已有类Worker,利用LinkedList编写一个WorkerList类,完成计算所有工人总工资的功能

news/2025/10/6 21:57:12/文章来源:https://www.cnblogs.com/wzzkaifa/p/19127978

目录

1.问题描述

2.函数接口定义: 

3.裁判测试程序样例:

4.输入和输出样例

输入样例:

输出样例:

 5.实现代码   


1.问题描述

Main类:在main方法中,调用constructWorkerList方法构建一个Worker对象链表,调用computeTotalSalary方法计算总工资并输出到屏幕。

根据要求,编写WorkerList类的构造方法和方法。编程要求如下:

  1. 数据使用Scanner对象从键盘读入;
  2. constructWorkerList方法:从键盘读入工人数量workerNum,调用readInWorker方法读入workerNum个工人,将每个工人对象添加到链表中,最后返回链表。
  3. readInWorker方法:使用scanner从键盘读入一个工人的姓名、年龄和工资,构建一个Worker对象并返回
  4. computeTotalSalary方法:计算链表中所有工人的工资总和并返回。

提示:
Scanner对象读入字符串的方法:

next()方法读入一个字符串,读到空白符结束;(本题中使用next()方法读入字符串)

nextLine()也是读入一个字符串,但读取到回车(也就是"\r")结束。

2.函数接口定义: 

Worker readInWorker();List constructWorkerList();double computeTotalSalary(List list);

3.裁判测试程序样例:

import java.util.*; public class Main {    public static void main(String[] args) {                WorkerList app=new WorkerList();                                List list=app.constructWorkerList();                System.out.println(app.computeTotalSalary(list));        }} /* 请在这里填写答案:将WorkerList类补充在这里 */  class Worker {        private String name;    private double salary;        public Worker() { }        public Worker(String name, double salary){        this.name = name;        this.salary = salary;    }     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 String toString() {        return name + " "+salary;    }    }

4.输入和输出样例

输入样例:

在这里给出一组输入。例如:

2May 500Bob 800

输出样例:

在这里给出相应的输出。例如:

1300.0

 5.实现代码   

class WorkerList {    Worker readInWorker() {        Scanner sc = new Scanner(System.in);        Worker worker = new Worker();        String str=sc.nextLine();        String []ss=str.split("\\s+");        if(ss.length==2){            System.out.println(ss[1]);            worker.setName(ss[0]);            worker.setSalary(Double.parseDouble(ss[1]));        }        return worker;    }     List constructWorkerList() {        List list = new ArrayList();        Scanner sc = new Scanner(System.in);        int count = sc.nextInt();        for (int i = 0; i  list) {        if(list==null)        {            return 0.0;        }        double sum = 0.0;        for (Worker w : list) {            sum += w.getSalary();        }        return sum;    }}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/929743.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

威尔逊定理的证明

威尔逊定理: 首先,对于 \(p = 2\),显然成立。 若 \(p \not= 2\),我们考虑一个 \(x\) 在模 \(p\) 意义下的逆元若是他自己,则 \(x^2\equiv 1(\text{mod}\ p)\)。 \(x\equiv 1\) 或 \(p - 1(\text{mod}\ p)\)。 而且…

网站开发好学嘛哪里有网站推广软件

来源:机器之心摘要:AI 迎来另一寒冬?这是 2018 年下半年至今我们一直能听到的一种声音。这类唱衰的文章一经发布,总是能博人眼球。这篇发表在 Medium 上的文章探讨了 AI 的历史和现在,泛谈了深度学习的局限性&#xff…

实用指南:HTML实现端午节主题网站:龙舟争渡,凭吊祭江诵君赋

实用指南:HTML实现端午节主题网站:龙舟争渡,凭吊祭江诵君赋pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Con…

哪个网站可以做计算机二级的题营销网络的建设有哪些

一、申办条件 符合下列条件之一的本市户籍人员(除学校学生集体户口外),可办理户口市内迁移。 1.迁入本人合法住宅房屋地址。 2.投靠直系亲属,迁入其合法住宅房屋地址,或迁入其家庭户内。 3.因离婚、房屋所有权发生转移…

大数据-276 Spark MLib - 基础介绍 机器学习算法 Bagging和Boosting区别 GBDT梯度提升树 - 实践

大数据-276 Spark MLib - 基础介绍 机器学习算法 Bagging和Boosting区别 GBDT梯度提升树 - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !im…

深入解析:rknn优化教程(一)

深入解析:rknn优化教程(一)pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco"…

谁有可以用的网站wordpress 中介网站

#!/usr/bin/python #调用pythonfrom sys import argv #导入sys是导入python解释器和他环境相关的参数from os import makedirs,unlink,sep  #os主要提供对系统路径,文件重命名和删除文件所需的函数#makedirs是创建递归文件夹的函数。#比如说我们要创建一个新的目录…

类似in a wordpress苏州网站建设网站优化

鼠标会变成以下 拉开后就 出现想要的部分

WannaCry勒索病毒数字取证与安全监控实战指南

本文详细介绍了如何构建网络安全实验环境分析WannaCry勒索病毒,涵盖Elastic SIEM配置、Sysmon监控部署、静态动态分析技术,以及使用Autopsy和Volatility进行磁盘内存取证的全流程实战操作。WannaCry勒索病毒:DFIR与…

Azure DevOps 管道部署系列之一本地服务器 - 实践

Azure DevOps 管道部署系列之一本地服务器 - 实践2025-10-06 21:39 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; displa…

我的网站域名上海电子商务网站制作

指针(1)学习流程 —————————————————————————————————————————————————————————————————————————————————————————————————————————————…

吴恩达深度学习课程一:神经网络和深度学习 第二周:神经网络基础(二)

此分类用于记录吴恩达深度学习课程的学习笔记。 课程相关信息链接如下:原课程视频链接:[双语字幕]吴恩达深度学习deeplearning.ai github课程资料,含课件与笔记:吴恩达深度学习教学资料 课程配套练习(中英)与答案…

08. 自定义组件

一、在单独文件中自定义组件我们可以在终端中使用 pip 安装 PySide6 模块。默认是从国外的主站上下载,因此,我们可能会遇到网络不好的情况导致下载失败。我们可以在 pip 指令后通过 -i 指定国内镜像源下载。 pip ins…

php网站的特点网站图标素材图片

作业1:设计界面 使用手动连接,将登录框中的取消按钮使用qt4版本的连接到自定义的槽函数中,在自定义的槽函数中调用关闭函数 将登录按钮使用qt5版本的连接到自定义的槽函数中,在槽函数中判断ui界面上输入的账号是否为"admin…

深入解析:板凳-------Mysql cookbook学习 (九--2)

深入解析:板凳-------Mysql cookbook学习 (九--2)pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas&quo…

20251006 模拟测 总结

\(\mathcal{Preface}\) 分数 \(90+100+100+30=320\)。 挂完了,呜。 \(\mathcal{Problem \space{} A}\) Tag:诈骗,循环。 减法可以出负数,我们希望最后的值最大,可以一开始用最小的值去减其他所有值,但是保留任意…

数据源切换之道

深入探讨SpringBoot动态数据源切换的两种核心实现:MyBatis插件与SpringAOP。从原理剖析到实战演练,从性能对比到生产避坑,为你提供全方位的数据源切换解决方案。大家好,我是 Mr.Sun,一名热爱技术和分享的程序员。…

个人网站 网站教程做网站用php吗

样例简介 智能煤气检测系统通过实时监测环境中烟雾浓度,当一氧化碳浓度超标时,及时向用户发出警报。在连接网络后,配合数字管家应用,用户可以远程配置智能煤气检测系统的报警阈值,远程接收智能煤气检测系统报警信息。…

网站制作有哪些企业做医疗健康类网站需要资质吗

一直以来听的多了,什么UDP广播之类的,不过自己一直没有试验过,这次闲来无聊,于是测试了一下。网上说的其实并不是非常的正确,流传着不少的错误言论,这次自己动手测试了一下,没想到比我想象中的还…