1.栈
- 入栈:push();
- 出栈:pop();
- 获取栈顶元素:peek();
- 判空:empty();
import java.util.Stack;
public class Main {
public static void main(String[] args) {
//入栈
Stack<String> st = new Stack<>();
System.out.println(st);
st.push("a");
st.push("b");
st.push("c");
st.push("d");
System.out.println(st);
//获取栈顶元素
System.out.println(st.peek());
//出栈
System.out.println(st.pop());
System.out.println(st);
//判断是否为空
System.out.println(st.empty());
}
}
运行结果:
[]
[a, b, c, d]
d
d
[a, b, c]
false
2.队列
/**
*@author yangyvting
*@date 2019年5月4日
*/
package 线性结构_列表_链表_栈_队列;
import java.util.LinkedList;
import java.util.Queue;
public class 队列 {
public static void main(String[] args) {
Queue<Integer> qu = new LinkedList<>();
System.out.println("没加元素时:" + qu);
//入队列
qu.add(12);
qu.add(32);
qu.add(132);
qu.add(13212);
System.out.println("加入元素后:" + qu);
//出队列
qu.poll();
qu.poll();
System.out.println("移除部分元素后:" + qu);
}
}
运行结果:
没加元素时:[]
加入元素后:[12, 32, 132, 13212]
移除部分元素后:[132, 13212]
其实可以将ArrayList当做Queue使用,只是用的时候不要对中间的数直接进行 操作就可以。入队列直接add,出队列只对下表为0的数remove