zl程序教程

您现在的位置是:首页 >  后端

当前栏目

Java中Stack、Queue、Deque类常用方法

JAVA方法 常用 Queue Stack deque
2023-09-27 14:29:07 时间

Stack:(遗留类,不建议使用)

//栈构造
Stack<Integer> stack = new Stack<>();

//入栈
stack.push(val);

//出栈
stack.pop();

//获取栈顶元素
stack.peek();

//获取stack大小
stack.size();

//判断栈是否为空
stack.isEmpty()

Queue:(队列)

//队列构造
Queue<Integer> queue= new LinkedList<>();

//入队
queue.add(val);		//该方法在队列满时会抛异常
queue.offer(val);	//该方法在队列满时会返回false

//出队
queue.remove();		//该方法在队列空时会抛异常
queue.poll();		//该方法在队列空时会返回null

//获取队首元素
queue.element();	//该方法在队列空时会抛异常
queue.peek();		//该方法在队列空时会返回null

//获取queue大小
queue.size();

//判断队列是否为空
queue.isEmpty()

Deque:(模拟栈)

//栈构造
Deque<Integer> deque= new LinkedList<>();

//其余方法和Stack一致

Deque:(双端队列)

***注意:使用双端队列尽量写明FirstLast***

//双端队列构造
Deque<Integer> deque = new LinkedList<>();

//添加元素到队尾(常规入队)
deque.addLast(val);			//等价于deque.add(val)

//添加元素到队头
deque.addFirst(val);

//删除队头元素(常规出队)
deque.removeFirst(val);		//等价于deque.remove(val)

//删除队尾元素
deque.removeLast(val);

//获取队头元素(常规获取)
deque.peekFirst();		//等价于deque.peek()

//获取队尾元素
deque.peekLast();

//获取队列大小
deque.size();