A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 徐朋威0716 中级黑马   /  2015-8-8 22:33  /  403 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

数据结构:就是组织数据的方式。
        数据结构 + 算法 (多了解)
        UML + 设计模式
常见的数据结构:
        栈、队列、链表、数组、树、图、堆...

栈(LIFO表):先进后出 (入口又叫压栈;出口又叫弹栈。入口和出口是在一端的),生活中的例子:强压子弹,弹夹。
队列(FIFO表):先进先出(入口出口在两端),生活举例:排队。

数组:存储多个同一种元素的容器。
        特点:元素都有编号,方便获取。
        数组的优缺点:(相对于链表而言)
                优点:有索引所以:查询快
                缺点:长度固定所以:增删慢
链表:把一些结点通过索引(指针)连接起来的数据结构。
        结点:由指针(地址)域和数值域组成。
        链表优缺点:
                优点:增删快
                缺点:查询满


安全(同步):效率低:
        去银行办业务,保证安全所以效率就会低。

List:三个子类
        ArrayList
                底层数据结构是数组,但是对象长度可变,查询快,增删慢
                线程不安全,效率高
        Vector
                底层数据是数组,对象长度可变,查询快,增删满
                线程安全,效率低
        LinkedList
                底层数据结构是链表,查询慢,增删快
                线程不安全,效率高
ArrayList 的 判断重复的contains方法底层使用的是equals方法。

面试题:
        运用LinkedList模拟一个栈结构
        思路:底层使用LinkedList的addFirst()方法,get()或者getFirst()方法,模拟。

与时代接轨的网站推荐:
        iteye.com 网站 了解新技术

单词记忆:
        Enumeration 枚举的意思
        element 元素的意思

增强for循环:
格式:
        for(数组或者Collection集合中元素的类型 变量名:数组或者Collection集合对象)
        {
                使用变量名即可。
        }
作用:简化数组和集合的遍历(用来代替迭代器,底层是迭代器。不能在用增强for的时候,用集合对象对集合做出修改)
        例如:
        //循环遍历arr 数组
        int[] arr = {1,2,2};
        for(int x:arr)
        {
                System.out.println(x);
        }
注意:到此为止 集合的遍历方式已经有5种了:
        1.输出
        2.普通for循环
        3.增强for循环
        4.普通迭代器
        5.ListIterator 迭代器

范型的应用:
        范型类:范型加在类上,在创建对象的时候明确数据类型
        范型方法:把范型加在方法上。(放在返回值的前面)
                明确数据类型的工作放到了调用方法的时候
        范型接口:
                子类实现范型接口的方式1:(这个时候范型类型的指定是在创建类的时候确定下来的)
                        类名 implements 接口名<明确类型>(){
                                方法名 (明确数据类型 形式参数名){}
                        }

                子类实现范型接口的方式2:(这个时候范型类型的指定是在创建对象时指定的)
                        类名<E> implements 接口名<E>(){
                                方法名 (范型 形式参数名){}
                        }

范型只存在于编译期,运行期就没有范型了,这样是为了提高效率。

2 个回复

倒序浏览
{:2_31:}怀念一下
回复 使用道具 举报

这是从前写的吗
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马