• 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

  • 相关阅读:
    delphi Form属性设置 设置可实现窗体无最大化,并且不能拖大拖小
    学习 TTreeView [1]
    学习 TTreeView [3]
    学习官方示例
    踩方格(找规律 递推)
    踩方格(找规律 递推)
    普及组2008NOIP 排座椅(贪心+排序)
    普及组2008NOIP 排座椅(贪心+排序)
    POJ_3740 Easy Finding ——精确覆盖问题,DLX模版
    POJ_3740 Easy Finding ——精确覆盖问题,DLX模版
  • 原文地址:https://www.cnblogs.com/Tab1994/p/5459506.html
Copyright © 2020-2023  润新知