在Java中如何自定义Stack类

avatar
作者
猴君
阅读量:0

在Java中,可以通过继承java.util.Stack类或实现java.util.Deque接口来自定义一个栈(Stack)类。这里我们给出两种方法的示例:

方法一:继承java.util.Stack

import java.util.Stack;  public class MyStack<T> extends Stack<T> {     // 在这里添加自定义的方法和属性 } 

方法二:实现java.util.Deque接口

import java.util.ArrayDeque; import java.util.Deque;  public class MyStack<T> implements Deque<T> {     private ArrayDeque<T> deque = new ArrayDeque<>();      // 实现Deque接口的方法     @Override     public void push(T item) {         deque.push(item);     }      @Override     public T pop() {         return deque.pop();     }      @Override     public T peek() {         return deque.peek();     }      @Override     public boolean empty() {         return deque.empty();     }      @Override     public int size() {         return deque.size();     }      // 在这里添加自定义的方法和属性 } 

使用自定义栈类:

public class Main {     public static void main(String[] args) {         MyStack<Integer> myStack = new MyStack<>();         myStack.push(1);         myStack.push(2);         myStack.push(3);         System.out.println("栈的大小:" + myStack.size());         System.out.println("栈顶元素:" + myStack.peek());         System.out.println("弹出栈顶元素:" + myStack.pop());     } } 

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!