Stack操作,栈的操作。
栈是先进后出,后进先出的操作。
有点类似浏览器返回上一页的操作,
public class Stack<E>extends Vector<E>
是vector的子类。
常用方法:
boolean |
empty() 测试堆栈是否为空。 |
E |
peek()
查看堆栈顶部的对象,但不从堆栈中移除它。 |
E |
pop()
移除堆栈顶部的对象,并作为此函数的值返回该对象。 |
E |
push(E item)
把项压入堆栈顶部。 |
int |
search(Object o)
返回对象在堆栈中的位置,以 1 为基数。 |
代码:
package 类集; import java.util.Stack; public class test1{ public static void main(String args[]){ Stack<String> s = new Stack<String>() ; s.push("A") ; // 入栈 s.push("B") ; // 入栈 s.push("C") ; // 入栈 if(!s.empty()) System.out.println("不是空栈"); else System.out.println("是空栈"); System.out.print(s.pop() + "、") ; System.out.print(s.pop() + "、") ; System.out.println(s.pop() + "、") ; System.out.println(s.pop()) ; //此时里面没有内容了,报错 } };
结果:
不是空栈 C、B、A、 Exception in thread "main" java.util.EmptyStackException at java.util.Stack.peek(Stack.java:102) at java.util.Stack.pop(Stack.java:84) at 类集.test1.main(test1.java:16)
如果栈中没有内容了,则无法再输出。