教学楼的教室设计都有前后门,学生上课时均可以从前后门进入教室。假设某老师的教学班共有55人,某天上课时某老师想清点从前后门进入教室上课的学生人数,而学生从前后门进入教室是随机的。请你利用接口Runnable编写线程程序,模拟学生从教室的前后门进入教室,并统计前后门进入的学生人数。
时间: 2024-02-09 21:07:54 浏览: 56
教室管理程序
好的,我会根据您的要求进行回答。以下是一个可能的实现:
```java
public class Classroom implements Runnable{
private int frontEntranceCount = 0; // 前门进入学生数
private int backEntranceCount = 0; // 后门进入学生数
@Override
public void run() {
Random random = new Random();
for (int i = 0; i < 55; i++) {
int entrance = random.nextInt(2); // 随机选择前门或后门
if (entrance == 0) {
frontEntranceCount++;
} else {
backEntranceCount++;
}
}
System.out.println("前门进入学生数:" + frontEntranceCount);
System.out.println("后门进入学生数:" + backEntranceCount);
}
public static void main(String[] args) {
Classroom classroom = new Classroom();
Thread thread = new Thread(classroom);
thread.start();
}
}
```
在这个实现中,我们使用了接口`Runnable`来实现多线程。在`run()`方法中,我们使用`Random`类来模拟学生随机选择前门或后门进入教室,并记录前门和后门进入的学生数。最后,我们通过`System.out.println()`方法将结果输出。
在`main()`方法中,我们创建了一个`Classroom`对象,并将其传递给一个新创建的线程中。然后,我们启动线程并让它执行`run()`方法。
当程序运行时,线程将模拟学生进入教室,记录前门和后门进入的学生数,并将结果输出。
阅读全文