添加一个队列的监听 使得当队列内有三个元素就全部打印并弹出
时间: 2024-05-08 13:19:26 浏览: 7
可以使用Java中的BlockingQueue来实现这个监听功能,代码示例如下:
```java
import java.util.concurrent.BlockingQueue;
import java.util.concurrent.LinkedBlockingQueue;
public class QueueListener {
private static BlockingQueue<Object> queue = new LinkedBlockingQueue<>();
public static void main(String[] args) {
new Thread(new QueueMonitor()).start();
// 添加元素到队列
for (int i = 1; i <= 5; i++) {
try {
queue.put("元素" + i);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
static class QueueMonitor implements Runnable {
@Override
public void run() {
while (true) {
if (queue.size() == 3) {
for (Object obj : queue) {
System.out.println(obj.toString());
}
queue.clear();
}
}
}
}
}
```
当队列中元素数量达到3个时,就会打印并弹出所有元素。注意,这里使用了一个无限循环来监听队列,实际使用时需要添加结束循环的条件。