java stack pollLast
时间: 2024-06-12 18:09:51 浏览: 120
Java中的Stack类是一种后进先出(LIFO)的数据结构,它继承自Vector类。Stack类提供了push()、pop()、peek()等方法来操作栈。其中,pollLast()方法是Deque接口中的方法,可以用于从栈顶弹出元素。
pollLast()方法的作用是从栈顶弹出一个元素并返回该元素,如果栈为空,则返回null。与pop()方法不同的是,pollLast()方法不会抛出异常。
下面是一个使用Stack和pollLast()方法的示例代码:
```
Stack<Integer> stack = new Stack<>();
stack.push(1);
stack.push(2);
stack.push(3);
System.out.println(stack.pollLast()); // 输出3
System.out.println(stack.pollLast()); // 输出2
System.out.println(stack.pollLast()); // 输出1
System.out.println(stack.pollLast()); // 输出null
```
相关问题
java 用什么代替stack
在Java中,可以使用Deque(双端队列)接口代替Stack类,因为Stack类已被标记为过时(deprecated)。具体来说,可以使用LinkedList类实现Deque接口,从而实现类似于Stack类的功能。例如,可以使用push()方法代替push()方法,使用pop()方法代替pop()方法,使用peek()方法代替peek()方法。另外,Deque接口还提供了其他有用的方法,如offer()、offerFirst()、offerLast()、poll()、pollFirst()、pollLast()等。
Deque java方法
以下是Deque在Java中的一些常用方法:
1. addFirst(E e):在Deque的开头插入指定元素。
2. addLast(E e):在Deque的结尾插入指定元素。
3. offerFirst(E e):在Deque的开头插入指定元素,并返回插入操作是否成功。
4. offerLast(E e):在Deque的结尾插入指定元素,并返回插入操作是否成功。
5. removeFirst():移除并返回Deque开头的元素,如果Deque为空,则抛出NoSuchElementException异常。
6. removeLast():移除并返回Deque结尾的元素,如果Deque为空,则抛出NoSuchElementException异常。
7. pollFirst():移除并返回Deque开头的元素,如果Deque为空,则返回null。
8. pollLast():移除并返回Deque结尾的元素,如果Deque为空,则返回null。
9. getFirst():返回Deque开头的元素,如果Deque为空,则抛出NoSuchElementException异常。
10. getLast():返回Deque结尾的元素,如果Deque为空,则抛出NoSuchElementException异常。
11. peekFirst():返回Deque开头的元素,如果Deque为空,则返回null。
12. peekLast():返回Deque结尾的元素,如果Deque为空,则返回null。
下面是一个使用ArrayDeque实现堆栈的例子:
```java
import java.util.ArrayDeque;
import java.util.Deque;
public class StackExample {
public static void main(String[] args) {
Deque<Integer> stack = new ArrayDeque<>(); stack.push(1);
stack.push(2);
stack.push(3);
System.out.println(stack.pop()); // 输出:3
System.out.println(stack.pop()); // 输出:2
System.out.println(stack.pop()); // 输出:1
}
}
```
阅读全文