16版.就诊时排队叫号
MainClass
public class MainClass { public static void main(String[] args) { // 创建默认叫号排队器 QueueCaller qc = new QueueCaller(); // 取3个号 for (int i = 1; i <= 3; i++) { qc.fetchNumber("张山-" + i); } while (qc.size() != 0) { qc.callNumber(); // 显示候诊信息 qc.showPatients(); } }}
QueueCaller
package cn.campsg.java.experiment;import java.util.ArrayList;public class QueueCaller { private ArrayList queue; public QueueCaller() { //构造函数里创建实例 queue = new ArrayList(); } //获取容器中现有数量 public int size() { return queue.size(); } //向容器添加String类型的,此时第一个为就诊的,后面为等待就诊的 public void fetchNumber(String patient) { queue.add(patient); System.out.println(patient + "前面还有" + (size() - 1) + "位在等候就诊"); } //这里是查看候诊中的 public void showPatients() { if (queue.size() <= 1) { return; } else { for (int i = 1; i <= queue.size() - 1; i++) System.out.println(queue.get(i) + "候诊中"); } } //进行叫号,移除正在就诊的,然后进行呼叫下一个 public void callNumber() { queue.remove(0); if (queue.size() != 0) System.out.println("请患者:" + queue.get(0) + "到诊室就诊!"); }}
题目描述
1、实验要求 本实验要求:以医院排队叫号就诊为业务背景,训练Java列表对象(List)的应用场景。 1-1. 业务说明: 1-1.1. 本实验以患者到医院就诊为业务背景,患者取号排队,等待叫号。 1-1.2. 叫号器负责叫号,叫号后移除排队的队首患者,并显示其他候诊人。 1-2. 创建工程并配置环境: 1-2.1. 限制1. 创建实验工程,命名为:SE_JAVA_EXP_E039; 1-2.1. 限制2. 创建包,命名为:cn.campsg.java.experiment; 1-3. 创建排队叫号器业务类: 1-3.1. 限制1. 在cn.campsg.java.experiment.包中创建排队叫号器业务类: 1) 类名:QueueCaller。 1-3.2. 为QueueCaller类创建私有属性,要求如下:属性权限属性名称属性类型属性说明privatequeue无ArrayList患者排队列表泛型说明:队列中存储的是患者姓名(字符串类型)。 1-3.3. 为QueueCaller类创建0参构造器: 1) 在构造器内实例化患者排队列表(queue)。 1-3.4. 为QueueCaller类创建获取患者数量的方法,要求如下:访问权限方法名称返回值方法参数参数说明publicsizeint无无方法说明:本方法获得当前正在排队候诊的患者数量。 1-3.5. size方法的业务逻辑实现要求如下: 1) 从排队队列queue中获取有效长度。 1-3.6. 为QueueCaller类创建取号的方法,要求如下:访问权限方法名称返回值方法参数参数说明publicfetchNumbervoidString patient取号的患者方法说明:本方法将就诊患者加入到排队队列(queue)中。 1-3.7. fetchNumber方法的业务逻辑实现要求如下: 1) 将就诊患者加入到排队队列(queue)中; 2) 输出患者排队就诊信息,信息如下: 患者姓名 + "前面还有 " + 排队人数+ " 位在等候就诊。" 1-3.8. 为QueueCaller类创建显示候诊患者信息的方法,要求如下:访问权限方法名称返回值方法参数参数说明publicshowPatientsvoid无无方法说明:本方法显示所有正在排队的患者姓名。 1-3.9. showPatients方法的业务逻辑实现要求如下: 1) 获取排队的所有患者姓名; 2) 输出每位患者的姓名,信息内容: 患者姓名 + " 候诊中"。 1-3.10. 为QueueCaller类创建叫号方法,要求如下:访问权限方法名称返回值方法参数参数说明publiccallNumbervoid无无方法说明:按照取号顺序依次叫号。 1-3.11. callNumber方法的业务逻辑实现要求如下: 1) 从排队队列(queue)中返回队首患者姓名; 2) 移除队首患者(表示该患者已经就诊不在排队队列中)。 3) 输出被叫号的患者信息,信息内容: "请患者:" + 患者姓名 + " 到诊室就诊!"。 1-4. 显示模拟叫号就诊情况: 1-4.1. 限制1. 在cn.campsg.java.experiment包中创建主类:MainClass; 1-4.2. 为MainClass创建入口主方法:main。 1-4.3. 模拟3个患者排队就诊: 1) 在main方法中,创建1个排队叫号器(QueueCaller)对象; 2) 在main方法中,向叫号器对象存入3个患者姓名; 1-4.4. 模拟叫号: 1) 在main方法中,循环叫号直到没有就诊患者为止。 2) 每次叫号后均需显示正在排队的患者信息。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
暂时没有评论,来抢沙发吧~