• 基础回顾之集合框架


    1.基本数据类型数组默认值:整数型  byte short int long 默认值为0 ,浮点型 float ,double  默认值 0.0  字符型  char   默认值为 空字符串   boolean 型  默认值为 false

    2.引用数据类型数组默认值为null

    3.数组与集合的区别

      1> 数组即可以存储基本数据类型,也可以存储引用数据类型,存储基本数据类型时,存的是值,存储引用数据类型时,存的是地址值

          集合只能存储引用数据类型,当集合存储基本数据类型时,基本数据类型会自动装箱变成队像存储到集合中

      2>数组的长度是不可变得

       集合的长度是可变的

      3>如果存储的数据的数量是固定的尽量使用数组,(使用集合存储数据,效率个更高,更加节省内存)

        如果存储的数据的数量是变化的就使用集合这样更加方便

    4. collection(单列集合框架)

                                                ArrayList        (数组实现)

                      List(集合接口,存储有序,有索引,可存储重复元素)      LinkedList        (链表实现)

                                                vector              (数组实现)

        collection(单列集合接口)

                                

                                              HashSet     (哈希算法)

                        Set(集合接口,无序,不可存储,重复元素)

                                              TreeSet       (二叉树算法实现)

    5.数据类型之,数组实现集合原理

        <> 由数组实现的集合底层初始化大小为 10 ,到超过10个元素时,将创建一个新的集合,新集合的容量为老集合的1.5倍,并将老集合中的元素复制到新集合中,将老集合抛弃,以此类推.

    6.数组实现集合,查询快,增删慢原理

        <> 查询快,直接可以通过索引确定元素位置

        <> 增删慢,向指定位置增加元素,该索引位置以后的元素包含该位置元素都要向后复制移动一位,并将增加的元素覆盖掉该索引位置的元素,

             删除指定位置的元素,该索引位置以后的元素都要向前复制一位,并将原来最后索引位置的元素置为null

    7.数据类型之,链表实现集合原理

        <> 链表是通过记住前后元素形成一条链子,增加时只需打断链子,新元素记录前后元素即可

    9.链表类型,增删快,查询慢原理

        <> 查询慢,连表结构的集合需要从前,或从后,依照 链表的连接顺序查找,直到查到该元素为止

        <> 增删快,,增加时只需打断链子,新元素记录前后元素即可

             删除时,只需删除元素,并重新记录前后元素即可

    10.线程安全问题

      vector 线程安全的

      ArrayList 线程不安全

      LinkedList 线程不安全的

  • 相关阅读:
    Linux系统中日志级别详情
    android测试和iOS测试的区别
    React Router的Route的使用
    React中this.props的主要属性
    2019 年 React 学习路线图(转)
    Failed to execute goal org.apache.maven.plugins:maven-clean-plugin:2.4.1:clean (default-clean) on project
    Maven笔记
    优化Android Studio/Gradle构建(转)
    Java相关查询记录
    自己电脑组一个Wifi热点
  • 原文地址:https://www.cnblogs.com/itniwota/p/7413174.html
Copyright © 2020-2023  润新知