620

1、等队列满了之后,将元素再次插入到队列,就会抛出IllegalStateException(QueueFull)异常。

2、如果队列为空,那么从队列中提取一个元素将引发NoSuchElementException异常。

实例

publicclassMyBlockQueue{
publicstaticvoidmain(String[]args){
ArrayBlockingQueue<Integer>q=newArrayBlockingQueue<Integer>(3);
newThread(()->{
q.add(1);
System.out.println(Thread.currentThread().getName()+"放入一个元素");
q.add(2);
System.out.println(Thread.currentThread().getName()+"放入一个元素");
q.add(3);
System.out.println(Thread.currentThread().getName()+"放入一个元素");
,"线程1").start();

newThread(()->{
q.remove();
System.out.println(Thread.currentThread().getName()+"拿走一个元素");
q.remove();
System.out.println(Thread.currentThread().getName()+"拿走一个元素");
q.remove();
System.out.println(Thread.currentThread().getName()+"拿走一个元素");
q.remove();
System.out.println(Thread.currentThread().getName()+"拿走一个元素");
,"线程2").start();

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。