Java中的双端队列接口
java.util.Deque接口是java.util.Queue接口的子类型,它支持两端元素的插入和删除。
接口声明
public interface Deque<E>extends Queue<E>
ArrayDeque类别
java.util.ArrayDeque中类提供可调整大小的数组,并实现的Deque接口。以下是关于数组双端队列的要点-
数组双端队列没有容量限制,因此可以根据需要增加以支持使用。
它们不是线程安全的。在没有外部同步的情况下。
它们不支持多个线程的并发访问。
数组双端队列中禁止使用空元素。
它们比Stack和LinkedList快。
此类及其迭代器实现Collection和Iterator接口的所有可选方法。
类声明
以下是java.util.ArrayDeque类的声明-
public class ArrayDeque<E>extends AbstractCollection<E>
implements Deque<E>, Cloneable, Serializable
这里<E>表示一个Element,可以是任何类。例如,如果要构建整数数组列表,则将其初始化为-
ArrayList<Integer> list = new ArrayList<Integer>();
类的构造函数
序号 | 构造函数与说明 |
---|---|
1 | ArrayDeque() 此构造函数用于创建一个空数组双端队列,其初始容量足以容纳16个元素。 |
2 | ArrayDeque(Collection <?extended E> c) 此构造函数用于创建一个包含指定集合元素的双端队列。 |
3 | ArrayDeque(int numElements) 此构造函数用于创建一个空数组双端队列,其初始容量足以容纳指定数量的元素。 |
示例
import java.util.ArrayDeque;import java.util.Deque;
public class Tester {
public static void main(String[] args) {
//创建一个具有初始容量的空数组双端队列
Deque<Integer> deque = new ArrayDeque<Integer>(5);
// use add() method to add elements in the deque
deque.add(20);
deque.add(30);
deque.add(20);
deque.add(30);
deque.add(15);
deque.add(22);
deque.add(11);
//让我们打印出双端队列中所有可用的元素
for (Integer number : deque) {
System.out.println("Number = " + number);
}
// getFirst() will retrieve element at first position
int first = deque.getFirst();
System.out.println("Retrieved Element is = " + first);
// getLast() will retrieve element at last position
int last = deque.getLast();
System.out.println("Retrieved Element is = " + last);
}
}
输出结果
Number = 20Number = 30
Number = 20
Number = 30
Number = 15
Number = 22
Number = 11
Retrieved Element is = 20
Retrieved Element is = 11
以上是 Java中的双端队列接口 的全部内容, 来源链接: utcz.com/z/316132.html