栈的方法
栈是Vector的一个子类,它实现了一个标准的先进后出的栈,栈本身最重要的就是 push 和 pop。
堆栈只定义了默认构造函数,用来创建一个空栈。堆栈除了由Vector定义的所有方法,自己也定义了一些方法:
- 用栈Stack 创建对象(类型不同)
- Stack<Integer> stack = new Stack<>();
- Stack<Character> stack = new Stack<>();
- Stack<TreeNode> stack = new Stack<>(){{push(root); }}; //创建存储树节点类型的栈,并将树的根节点入栈
- 栈是否为空
boolean isEmpty();
- data元素入栈
- void push(Object data);
- void add(Object data);`
- 返回栈顶元素,未出栈
Object peek();
- 出栈,返回栈顶元素,同时从栈中移除该元素
Object pop();
- 返回对象在堆栈中的位置,以 1 为基数。
int search(Object element);
add & push
1.共同点:add,push都可以向stack中添加元素。
2.不同点:
-
add是继承自Vector的方法,且返回值类型是boolean。
-
push是Stack自身的方法,返回值类型是参数类型。