zoukankan      html  css  js  c++  java
  • 集合

    由来: 由于数组满足不了变化的需求,于是java就给我们提供了另外一个容器,而这个容器内就是集合


    数组和集合的区别:

    * 长度的区别: 数组的长度是不可变的,不能自动增长,效率高,占用内存小;集合的长度是可变的,可以根据元素的增加而增长.

    * 存储数据类型的区别: 数组可以存储基本数据类型的元素,也可以存储引用数据类型的元素 ; 而集合只能存储引用数据类型(对象)集合中也可以存储基本数据类型,但是在存储的时候会自动装箱变成对象

    * 内容的区别: 数组只能存储同一种数据类型的元素 , 而集合可以存储多种数据类型的元素


    数组和集合什么时候用

    * 1,如果元素个数是固定的推荐用数组

    * 2,如果元素个数不是固定的推荐用集合


    集合的继承体系图

    Collection

    ----> List 元素有序 , 每一个元素存在整数索引 , 可以存储重复元素

    --> ArrayList 底层的数据结构是数组,查询快 , 增删慢 ; 线程不安全效率高

    -->Vector 底层的数据结构是数组,查询快 , 增删慢 ; 线程安全, 效率低

    -->LinkedList 底层的数据结构是链表,查询慢 , 增删快 ; 线程不安全效率高

    ----> Set 元素无序 , 每一个元素不存在整数索引 , 但是可以保证元素的唯一性

    --> HashSet

    --> TreeSet

  • 相关阅读:
    LinkedList源码浅析
    ArrayList/Vector/Stack底层分析
    遮罩层
    重写alert方法,去掉地址显示
    继承属性的函数
    为什么手机网页点击输入框的瞬间会出现灰色背景呢?怎么去掉灰色背景?
    伪类before和after
    五星好评
    String[]字符串数组,按字典顺序排列大小
    jquery ajax的load()方法和load()事件
  • 原文地址:https://www.cnblogs.com/loaderman/p/6407343.html
Copyright © 2011-2022 走看看