知识分享 – 大数据必学Java基础(六十):集合补充

集合补充

一、常见基础集合汇总

二、数据结构:栈

数据结构分为:

1、逻辑结构 :思想上的结构 –》卧室,厨房,卫生间 –》线性表(数组,链表),图,树,栈,队列

2、物理结构 :真实结构 –》钢筋混凝土+牛顿力学 –》紧密结构(顺序结构),跳转结构(链式结构)

特点:后进先出(LIFO – last in first out)

实际应用:

1、内存分析:形参,局部变量放入栈中。放入的那个区域的数据结构就是按照栈来做的。

(堆:利用完全二叉树的结构来维护一组数据)

2、网络浏览器多会将用户最近访问过的网址组织为一个栈。这样,用户每访问一个新页面,其地址就会被存放至栈顶;而用户每按下一次“后退”按钮,即可沿相反的次序访问此前刚访问过的页面。

3、主流的文本编辑器也大都支持编辑操作的历史记录功能(ctrl + z:撤销,ctrl + y:恢复),用户的编辑操作被依次记录在一个栈中。一旦出现误操作,用户只需按下“撤销”按钮,即可取消最近一次操作并回到此前的编辑状态。

三、Stack

package com.lanson.test01;

import java.util.Stack;

/**
 * @author : Lansonli
 */
public class Test {
    //这是main方法,程序的入口
    public static void main(String[] args) {
        /*
        Stack是Vector的子类,Vector里面两个重要的属性:
        Object[] elementData;底层依然是一个数组
        int elementCount;数组中的容量
         */
        Stack s = new Stack();
        s.add("A");
        s.add("B");
        s.add("C");
        s.add("D");
        System.out.println(s);//[A, B, C, D]
        System.out.println("栈是否为空:" + s.empty());

        System.out.println("查看栈顶的数据,但是不移除:" + s.peek());
        System.out.println(s);

        System.out.println("查看栈顶的数据,并且不移除:" + s.pop());
        System.out.println(s);

        s.push("D");//和add方法执行的功能一样,就是返回值不同
        System.out.println(s);

    }
}

正文完