Queque 方法对比和分类

时间:2020-12-25 18:27:48

添加类:方法

public boolean add(E e)      增加一个元索                     如果队列已满,则抛出一个IIIegaISlabEepeplian异常

boolean offer(E e)      添加一个元素并返回true       如果队列已满,则返回false,并且可以指定等待时间

public void put(E e) throws InterruptedException        添加一个元素 ,                    如果队列满,则阻塞  只有( BlockingQueue  才有,普通队列没有 )

删除方法:

E remove();   移除并返回队列头部的元素    如果队列为空,则抛出一个NoSuchElementException异常

  E poll();        移除并返问队列头部的元素    如果队列为空,则返回null,并且可以指定等待时间

E take() throws InterruptedException; 移除并返回队列头部的元素     如果队列为空,则阻塞,只有( BlockingQueue  才有,普通队列没有 )

  

查看类方法:只是看看,不删除
 public E element()  返回队列头部的元素             如果队列为空(这个方法不在Queue中 在 AbstractQueue 中 ,而且这个方法调用了 peek ),则抛出一个NoSuchElementException异常

E peek();  返回队列头部的元素             如果队列为空,则返回null

备注:查看没有延时的方法,大概是因为查不到就算了,但是获取之类的需要等待(对应消费者的情景)