银行叫号系统java
时间: 2023-12-20 13:32:10 浏览: 101
基于java的-387-基于SSM的银行排队叫号系统-源码.zip
以下是一个简单的Java代码示例,用于模拟银行叫号系统:
```java
import java.util.Random;
class BankCounter implements Runnable {
private static int counter = 1;
private int counterNumber;
public BankCounter() {
counterNumber = counter++;
}
@Override
public void run() {
Random random = new Random();
for (int i = 1; i <= 20; i++) {
System.out.println("窗口" + counterNumber + "正在为第" + i + "个客户服务");
try {
Thread.sleep(random.nextInt(5000)); // 模拟服务时间
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
public class BankCallSystem {
public static void main(String[] args) {
Thread counter1 = new Thread(new BankCounter());
Thread counter2 = new Thread(new BankCounter());
Thread counter3 = new Thread(new BankCounter());
counter1.start();
counter2.start();
counter3.start();
}
}
```
这段代码创建了一个`BankCounter`类,用于表示银行的某个窗口。每个窗口都是一个线程,通过实现`Runnable`接口来定义线程的行为。在`run`方法中,窗口会依次为20个客户提供服务,每个客户的服务时间是随机的。
在`BankCallSystem`类的`main`方法中,创建了三个窗口的线程,并启动它们。
阅读全文