目录
概述
Java里有一个叫做Stack的类,却没有叫做Queue的类(它是个接口名字)。当需要使用栈时,Java已不推荐使用Stack,而是推荐使用更高效的ArrayDeque;既然Queue只是一个接口,当需要使用队列时也就首选ArrayDeque了(次选是LinkedList)。
java Stack类
特性是, LIFO(后进先出)先进后出,最先进入的在栈底
Stack底层也是通过数组实现的,同时也是线程安全的
Stack stack = new Stack();
//添加 (插入数据到栈顶)
stack.push(10L);
//判罚是否为空
stack.empty();
System.out.println(stack.empty());
//获取栈顶元素
Object peek = stack.peek();
System.out.println(peek);
//删除(出栈)
Object pop = stack.pop();
System.out.println(pop);
//获取元素的位置
int search = stack.search(10L);
System.out.println(search);//从1开

本文介绍了Java集合框架中的Stack、Queue和Deque。Stack是LIFO数据结构,推荐使用ArrayDeque替代。Queue是FIFO数据结构,ArrayDeque和LinkedList是其常见实现。Deque是双端队列,既可用作栈又可用作队列,ArrayDeque作为线程不安全的高效实现。此外,文章还简要提到了PriorityQueue的源码解析。
最低0.47元/天 解锁文章

2231

被折叠的 条评论
为什么被折叠?



