Java集合---栈

来源:互联网 发布:js入门推荐书籍 编辑:程序博客网 时间:2024/06/08 09:31

栈,满足先进后出(FILO)原则。可以使用Deque(双端队列)来实现栈的数据结构,Deque是Queue的子接口。

基本操作:

import java.util.Deque;import java.util.LinkedList;/** * 栈 * 存储一组元素,但是存取元素必须遵循先进后出原则。 * 通常为了实现后退这类功能时会使用栈  */public class StackDemo {    public static void main(String[] args) {        /*         * java.util.Deque         * 双端队列,两端都可以进出队。         * 当只调用从一端进出队操作时,就形成了栈结构。         * 因此,双端队列为栈提供了两个方法: push, pop          */        Deque<String> stack = new LinkedList<String>();        /*         * void push(E e)         * 入栈操作,最后入栈的元素在栈顶(第一个元素位置)          */        stack.push("one");        stack.push("two");        stack.push("three");        stack.push("four");        System.out.println(stack);        /*          * E pop()         * 出栈操作         */        String str = stack.pop();        System.out.println(str);        System.out.println(stack);        //只得到栈顶元素,但是不出栈        str = stack.peek();            System.out.println(str);        System.out.println(stack);        /*         * 遍历          */        while(stack.size()>0){            str = stack.pop();            System.out.println(str);        }        System.out.println(stack);    }}