一.栈
符合先进后出原则,栈为空时不能出栈,进栈时排在栈顶,出栈时栈顶元素出栈
使用ArrayList实现
1.push 进栈
使用ArrayList的add方法,直接在list最后添加元素,实现进栈
public static void push(ArrayList<String> list, String str) {
list.add(str);
}
2.pop 出栈
因为是栈,出栈时,将最后一个元素pop,如果list本身为空,则不能出栈,手动抛出异常
public static String pop(ArrayList<String> list) throws Exception {
if (list.size() == 0) {
throw new Exception("栈为空, 不可pop!!!");
}
return list.remove(list.size() - 1);
}
3.测试
public static void main(String[] args) throws Exception {
//栈 (先进后出)
ArrayList<String> list_stack = new ArrayList<>();
push(list_stack, "Poetic");
push(list_stack, "Dream");
push(list_stack, "Sprite");
System.out.println(list_stack);
System.out.println("出栈:" + pop(list_stack));
System.out.println(list_stack);
System.out.println("出栈:" + pop(list_stack));
System.out.println(list_stack);
System.out.println("出栈:" + pop(list_stack));
System.out.println(list_stack);
//异常
// System.out.println("出栈:" + pop(list_stack));
}
异常抛出