import java.util.ArrayList; import java.util.List; import java.util.Random; public class HospitalMonitor { private List<Patient> patients = new ArrayList<Patient>(); private List<Staff> staffs = new ArrayList<Staff>(); // 添加患者 public void addPatient(Patient patient) { patients.add(patient); } // 添加医护人员 public void addStaff(Staff staff) { staffs.add(staff); } // 监测病房 public void monitorWard() { Random random = new Random(); for (Patient patient : patients) { // 模拟患者情况,50%概率出现异常 if (random.nextDouble() < 0.5) { // 触发警报 Alert alert = new Alert(patient); // 通知医护人员 for (Staff staff : staffs) { staff.receiveAlert(alert); } } } } } // 患者类 class Patient { private String name; public Patient(String name) { this.name = name; } public String getName() { return name; } } // 警报类 class Alert { private Patient patient; public Alert(Patient patient) { this.patient = patient; } public Patient getPatient() { return patient; } } // 医护人员类 abstract class Staff { private String name; public Staff(String name) { this.name = name; } public String getName() { return name; } // 接收警报 public abstract void receiveAlert(Alert alert); } // 医生类 class Doctor extends Staff { public Doctor(String name) { super(name); } // 处理警报 public void receiveAlert(Alert alert) { System.out.println("Doctor " + getName() + " received an alert for patient " + alert.getPatient().getName()); } } // 护士类 class Nurse extends Staff { public Nurse(String name) { super(name); } // 处理警报 public void receiveAlert(Alert alert) { System.out.println("Nurse " + getName() + " received an alert for patient " + alert.getPatient().getName()); } }这串代码运行结果是怎么样的
时间: 2024-01-30 09:04:12 浏览: 30
这段代码是一个简单的医院病房监控系统的实现,它模拟了医院病房中的患者和医护人员,并随机模拟患者出现异常的情况。当患者出现异常时,系统将触发一个警报,并通知所有的医护人员。
具体运行结果取决于代码的调用方式,但是在理想情况下,当患者出现异常时,控制台上应该会输出类似于下面的信息:
```
Doctor John received an alert for patient Alice
Nurse Jane received an alert for patient Alice
```
其中,`John`和`Jane`是医生和护士的名字,`Alice`是出现异常的患者的名字。这些信息表明警报已经成功地通知了医护人员,并且他们已经开始处理这个异常情况。
相关问题
什么时候需要使用import java.util.ArrayList; import java.util.List;
当我们需要在 Java 代码中使用 ArrayList 和 List 这两个类时,就需要使用 import java.util.ArrayList; import java.util.List; 这两行代码。因为 ArrayList 和 List 都是 Java 标准库中的类,不在默认的包中,所以我们需要通过 import 语句来引入这些类,使得编译器能够识别并使用它们。如果不进行导入,编译器将无法识别 ArrayList 和 List,也就无法在代码中使用它们。
import java.util.ArrayList; import java.util.Iterator; import java.util.List;
这段代码是一个Java程序中的import语句,用于导入java.util包中的ArrayList、Iterator和List类。
在Java中,import语句用于引入其他包中的类,以便在程序中使用这些类。在这段代码中,导入了java.util包中的ArrayList、Iterator和List类,这些类是Java集合框架中非常常用的类,用于管理和处理集合数据。
ArrayList是一个动态数组,可以根据需要自动扩展容量,提供了一系列方便的方法来添加、删除、遍历和获取元素等操作。
Iterator是一个用于遍历集合元素的接口,提供了hasNext()和next()这两个方法来实现遍历操作。
List是一个接口,继承了Collection接口,表示一个有序的集合。它提供了一些常用的方法来操作集合元素,例如添加、删除、获取元素等。具体实现类包括ArrayList、LinkedList等。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)