JAVA程序员提高教程(10)-认识List列表之Stack

    作者:课课家教育更新于: 2016-02-01 15:21:48

    大神带你学编程,欢迎选课

      不多说,我们直接看源代码

    JAVA程序员提高教程(10)-认识List列表之Stack_java课程标准_21天学通java_课课家

      1.package collection.lession10;

      2.

      3.import java.util.Arrays;

      4.import java.util.List;

      5.import java.util.Stack;

      6.

      7./**

      9. * 实现了LIFO的对象堆栈,

      10. * 类本身继承自Vector,扩展了一些方法

      11. *

      12. * 推荐使用 JDk 6 开始提供的 Deque 接口实现堆栈操作

      13. *

      15. *

      17. *

      18. */19.public class Lession10 {

      20.

      21. public static void main(String[] args) {

      22. // 由于Stack 继承自Vector,所以Vector的各种方法这里就不介绍了

      23. // 请自行参考Vector对应的教程

      24.

      25. // 创建一个空堆栈

      26. Stack stack = new Stack();

      27. showList(stack);

      28.

      29. // 检查堆栈是否为空

      30. System.out.println("empty=" + stack.empty());

      31.

      32. // 我们把数据压入堆栈

      33. stack.push(123);

      34. stack.push("xyz");

      35. showList(stack);

      36.

      37. // 检查堆栈是否为空

      38. System.out.println("empty=" + stack.empty());

      39.

      40. // 再次压入数据

      41. stack.push(456);

      42. stack.push("xyz"); // 注意这个xyz与前面的一个数据重复

      43. showList(stack);

      44.

      45. // 我们查看一下堆栈的第一个数据

      46. // 注意此peek操作并不移除数据,其仍在堆栈中

      47. System.out.println("first=" + stack.peek());

      48.

      49. // 下面我们搜索一下某个对象的位置

      50. System.out.println("123=" + stack.search(123));

      51. System.out.println("xyz=" + stack.search("xyz"));

      52.

      53. // 我们从堆栈中弹出输出

      54. while (!stack.empty()) {

      55. System.out.println("pop=" + stack.pop());

      56. }

      57. }

      58.

      59. /**

      60. * 显示List里面的数据。

      61. *

      62. * @param list

      63. */

      64. private static void showList(List list) {

      65. System.out.println(Arrays.toString(list.toArray()));

      66. }

      67.}

      68.

      堆栈在一般的应用中并不常见,大多和算法有关的时候才会使用。它属于后进先出的 LIFO的机制。push和pop是其标志性操作。

      在汇编语言里面,对于堆栈的操作也是

      PUSH AX

      POP AX

      对于List的介绍,我们就到此告一段落。

课课家教育

未登录