1. public static void main(String[] args) {
  2. //测试一下ArrayStack 是否正确
  3. //先创建一个ArrayStack对象->表示栈
  4. ArrayStack stack = new ArrayStack(4);
  5. String key = "";
  6. boolean loop = true; //控制是否退出菜单
  7. Scanner scanner = new Scanner(System.in);
  8. while(loop) {
  9. System.out.println("show: 表示显示栈");
  10. System.out.println("exit: 退出程序");
  11. System.out.println("push: 表示添加数据到栈(入栈)");
  12. System.out.println("pop: 表示从栈取出数据(出栈)");
  13. System.out.println("请输入你的选择");
  14. key = scanner.next();
  15. switch (key) {
  16. case "show":
  17. stack.list();
  18. break;
  19. case "push":
  20. System.out.println("请输入一个数");
  21. int value = scanner.nextInt();
  22. stack.push(value);
  23. break;
  24. case "pop":
  25. try {
  26. int res = stack.pop();
  27. System.out.printf("出栈的数据是 %d\n", res);
  28. } catch (Exception e) {
  29. // TODO: handle exception
  30. System.out.println(e.getMessage());
  31. }
  32. break;
  33. case "exit":
  34. scanner.close();
  35. loop = false;
  36. break;
  37. default:
  38. break;
  39. }
  40. }
  41. System.out.println("程序退出~~~");
  42. }

结果

  1. show: 表示显示栈
  2. exit: 退出程序
  3. push: 表示添加数据到栈(入栈)
  4. pop: 表示从栈取出数据(出栈)
  5. 请输入你的选择
  6. show
  7. 栈空,没有数据~~
  8. show: 表示显示栈
  9. exit: 退出程序
  10. push: 表示添加数据到栈(入栈)
  11. pop: 表示从栈取出数据(出栈)
  12. 请输入你的选择
  13. push
  14. 请输入一个数
  15. 1
  16. show: 表示显示栈
  17. exit: 退出程序
  18. push: 表示添加数据到栈(入栈)
  19. pop: 表示从栈取出数据(出栈)
  20. 请输入你的选择
  21. push
  22. 请输入一个数
  23. 4
  24. show: 表示显示栈
  25. exit: 退出程序
  26. push: 表示添加数据到栈(入栈)
  27. pop: 表示从栈取出数据(出栈)
  28. 请输入你的选择
  29. push
  30. 请输入一个数
  31. 7
  32. show: 表示显示栈
  33. exit: 退出程序
  34. push: 表示添加数据到栈(入栈)
  35. pop: 表示从栈取出数据(出栈)
  36. 请输入你的选择
  37. show
  38. stack[2]=7
  39. stack[1]=4
  40. stack[0]=1
  41. show: 表示显示栈
  42. exit: 退出程序
  43. push: 表示添加数据到栈(入栈)
  44. pop: 表示从栈取出数据(出栈)
  45. 请输入你的选择
  46. pop
  47. 出栈的数据是 7
  48. show: 表示显示栈
  49. exit: 退出程序
  50. push: 表示添加数据到栈(入栈)
  51. pop: 表示从栈取出数据(出栈)
  52. 请输入你的选择
  53. show
  54. stack[1]=4
  55. stack[0]=1
  56. show: 表示显示栈
  57. exit: 退出程序
  58. push: 表示添加数据到栈(入栈)
  59. pop: 表示从栈取出数据(出栈)
  60. 请输入你的选择
  61. exit
  62. 程序退出~~~
  63. Process finished with exit code 0