当前位置:嗨网首页>书籍在线阅读

10-其他说明

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

其他说明

LinkedBlockingDeque 类也提供了其他增删元素的方法,它们通过抛出异常或者直接返回 null 值来代替阻塞行为。这些方法如下所示。

  • takeFirst()takeLast() :这些方法分别返回双端队列中的第一个和最后一个元素。同时它们会移除队列中已经返回的元素。如果队列是空的,则它们会阻塞线程直到队列中有元素时为止。
  • getFirst()getLast() :这些方法分别返回双端队列中的第一个和最后一个元素。但它们不会移除队列中已经返回的元素。如果队列是空的,则它们会抛出一个 NoSuchElementException 异常。
  • peek()peekFirst()peekLast()peekFirst()peekLast() 方法分别返回队列中的第一个和最后一个元素。但它们不会移除队列中已经返回的元素。如果队列是空的,则它们会返回 null 值。
  • poll()pollFirst()pollLast()pollFirst()pollLast() 方法分别返回队列中的第一个和最后一个元素。同时它们会移除队列中已经返回的元素。如果队列是空的,则它们会返回 null 值。
  • add()addFirst()addLast()addFirst()addLast() 方法会分别添加一个元素到队头和队尾。如果双端队列是满的(在创建队列的时候指定了队列的长度),则它们会抛出一个 IllegalStateException 异常。