zoukankan      html  css  js  c++  java
  • 集合框架

    集合框架(集合的由来及集合继承体系图)
    * A:集合的由来
     * 数组长度是固定,当添加的元素超过了数组的长度时需要对数组重新定义,太麻烦,java内部给我们提供了集合类,能存储任意对象,长度是可以改变的,随着元素的增加而增加,随着元素的减少而减少
    * B:数组和集合的区别
     * 区别1 :
      * 数组既可以存储基本数据类型,又可以存储引用数据类型,基本数据类型存储的是值,引用数据类型存储的是地址值
      * 集合只能存储引用数据类型(对象)集合中也可以存储基本数据类型,但是在存储的时候会自动装箱变成对象
     * 区别2:
      * 数组长度是固定的,不能自动增长
      * 集合的长度的是可变的,可以根据元素的增加而增长
    * C:数组和集合什么时候用
      * 1,如果元素个数是固定的推荐用数组
      * 2,如果元素个数不是固定的推荐用集合

    迭代器原理
     * 迭代器原理:迭代器是对集合进行遍历,而每一个集合内部的存储结构都是不同的,所以每一个集合存和取都是不一样,那么就需要在每一个类中定义hasNext()和next()方法,这样做是可以的,但是会让整个集合体系过于臃肿,迭代器是将这样的方法向上抽取出接口,然后在每个类的内部,定义自己迭代方式,这样做的好处有二,第一规定了整个集合体系的遍历方式都是hasNext()和next()方法,第二,代码有底层内部实现,

    List的三个子类的特点
    *
      ArrayList:
       底层数据结构是数组,查询快,增删慢。
       线程不安全,效率高。
      Vector:
       底层数据结构是数组,查询快,增删慢。
       线程安全,效率低。
      Vector相对ArrayList查询慢(线程安全的)
      Vector相对LinkedList增删慢(数组结构)
      LinkedList:
       底层数据结构是链表,查询慢,增删快。
       线程不安全,效率高。
      Vector和ArrayList的区别
       Vector是线程安全的,效率低
       ArrayList是线程不安全的,效率高
      共同点:都是数组实现的
      ArrayList和LinkedList的区别
       ArrayList底层是数组结果,查询和修改快
       LinkedList底层是链表结构的,增和删比较快,查询和修改比较慢
      共同点:都是线程不安全的
     
    数组存储引用数据类型

    集合体系图

  • 相关阅读:
    SQL LOADER使用
    固定资产新增接口
    固定资产的调整分配接口
    固定资产的完全报废接口
    固定资产更新接口
    详解EBS接口开发之库存事务处理采购接收和退货
    物料分类新增&更新
    物料REVISION控制
    供应商导入的API补充(详解EBS接口开发之供应商导入)
    PostgreSQL经常使用函数
  • 原文地址:https://www.cnblogs.com/wuxu/p/10649429.html
Copyright © 2011-2022 走看看