• java初学者笔记总结day13


    数组:一种容器,可以装很多元素,元素跟下标绑定,下标范围(0到len-1)
    通过下标访问元素。长度固定。

    collection:一种容器,可以装很多元素,长度不固定(可以动态增加或减少)。
    collection容器都有管理者-》Iterator--》怎么获取容器.Iterator()
    通过管理者可以遍历容器元素。

    list:一种容器,可以装很多元素,长度不固定(可以动态增加或减少)。
    元素跟下标绑定,下标范围(0到len-1),通过下标访问元素。
    元素可以重复。

    list实现类
    a)arrayList:底层是数组,线程不安全,对比linkedList读取设置元素效率高,插入删除效率底。
    b)linkedList:底层是双向链表,对比arrayList读取设置元素效率低,插入删除效率高。
    c)vector:底层是数组,线程安全

    set:一种容器,可以装很多元素,长度不固定(可以动态增加或减少)。
    元素不能重复,没有绑定下标。

    set实现类
    a)hashset:底层是hashMap,通常使用hashset效率比treeset高。
    b)treeset:底层是treeMap,如果需要自动对添加元素做排序-使用。

    map:一种容器,可以装很多键(类似于下标)值(类似于元素)对,通过键访问值。
    键不能重复,值可以重复,长度不固定(可以动态增加或减少)。

    map实现类
    hashmap:底层是数组加单向链表,线程不安全,存储的键和值可以为null
    hashtable:底层是数组加单向链表,线程安全,存储的键和值不可以为null
    treemap:底层是红黑树,如果需要自动对添加键值对按照键做排序-使用。
    Properties:继承了hashtable,新增了api,与Properties文件做交互
    (读取文件数据,写数据文件)使用。

    怎么选择?
    1)需要的容器存储单个元素,长度固定,用于访问容器的数据--》数组
    2)需要的容器存储单个元素,长度不固定,要求可以存储重复元素--》list
    3)需要的容器存储单个元素,长度不固定,要求不可以存储重复元素--》set
    3)需要的容器存储一对数据(键-值),长度不固定--》map

  • 相关阅读:
    jquery 父、子页面之间页面元素的获取,方法的调用
    读excle
    dataTable写入数据库(大数据写入)
    经典类和新式类的区别
    重写父类方法
    封装redis
    继承
    私有方法
    优化MyDb

  • 原文地址:https://www.cnblogs.com/Tab1994/p/5459506.html
Copyright © 2020-2023  润新知