Java 中 ArrayBlockingQueue 类 drainTo() 方法


ArrayBlockingQueue 类的 drainTo() 方法从该队列中移除所有可用的元素并将它们添加到给定集合中。它返回已传输的元素数。

语法如下

int drainTo(Collection<? super E> c)

其中,c 是集合,该队列的元素将被传输到其中。要使用 ArrayBlockingQueue 类,需要导入以下包

import java.util.concurrent.ArrayBlockingQueue;

以下是实现 Java ArrayBlockingQueue 类的 drainTo() 方法的示例

示例

 实时演示

import java.util.ArrayList;
import java.util.concurrent.ArrayBlockingQueue;
public class Demo {
   public static void main(String[] args) throws InterruptedException {
      ArrayBlockingQueue<Integer> q = new ArrayBlockingQueue<Integer>(10);
      q.add(200);
      q.add(310);
      q.add(400);
      q.add(450);
      q.add(500);
      q.add(550);
      q.add(700);
      System.out.println("ArrayBlockingQueue = " + q);
      ArrayList arrList = new ArrayList();
      q.drainTo(arrList);
      System.out.println("Updated ArrayBlockingQueue = " + q);
      System.out.println("Our collection = " + arrList);
   }
}

输出

ArrayBlockingQueue = [200, 310, 400, 450, 500, 550, 700]
After drainTo Operation
Updated ArrayBlockingQueue = []
Our collection = [200, 310, 400, 450, 500, 550, 700]

更新日期:2019 年 7 月 30 日

171 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始
广告
© . All rights reserved.