zoukankan      html  css  js  c++  java
  • Java集合


    title: Java集合
    date: 2018-05-01 15:58:02
    tags: javaSE
    categories: 后端技术


    java容器接口

    一级容器

    集合只有两个基本接口:Collection和Map

    1. Collection:这个接口需要实现add方法
      boolean add(E element)
    2. Map:这个接口需要实现put方法,该接口是使用键值对进行存储的
      V put(K key,V value)
      V get(K key)

    二级容器

    继承自Collection

    1. List:这是一个有序集合,元素会增加到容器中的特定位置。可以采取两种方式访问:使用迭代器和整数索引(随机访问)来访问。如果实现方式不同,访问的代价也不一样。链表使用随机访问的代价巨大。
    2. Set:这个接口等同于Collection,但是定义更加详细,add方法不允许增加重复的元素。equals方法:只要两个集包含同样的元素就认为是相等的,不需要一样的顺序。hashCode方法的定义保证包含相同元素的集合会得到相同的散列码。其子接口SortedSet会提供用于排序的比较器对象。
    3. Queue:这个接口代表一个队列,采用“先进先出”的方式。

    继承自Map

    具体后面展开。

    具体实现类集合

    1. ArrayList:一种可以动态增长和缩短的索引集合。
    2. LinkedList:一种可以在任何位置进行高效的插入和删除操作的有序集合。
    3. ArrayDeque:一种用循环数组实现的双端队列。
    4. HashSet:一种没有重复元素的无需集合。
    5. TreeSet:一种有序集合。
    6. EnumSet:一种可以包含枚举类型值的集。
    7. LinkedHashSet:一种可以记住元素插入次序的集。
    8. PriorityQueue:一种允许高效删除最小元素的集合。
    9. HashMap:一种存储键值关联的数据结构。
    10. TreeSet:一种键值排列有序的映射表。
    11. EnumMap:一种键值数据枚举类型的映射表。
    12. LinkedHashMap:一种可以记住键值项添加次序的映射表。
    13. WeakHashMap:一种其值无用武之地后可以被垃圾回收器回收的映射表。
    14. IdentityHashMap:一种用==而不是用equals比较键值的映射表。

    集合结构示意图

    部分具体特性脑图:

    常用实现类以及对应接口:

  • 相关阅读:
    ES6常用语法
    @Autowired和@Resource的区别
    spring boot 引导
    Springboot 日志管理配置logback-spring.xml
    Java异常之checked与unchecked
    @Transactional(rollbackFor=Exception.class)的使用
    使用spring @Scheduled注解执行定时任务、
    Spring入门学习推荐
    Hadoop调优
    关于Flink--ProcessFunction的使用
  • 原文地址:https://www.cnblogs.com/didadida/p/10144353.html
Copyright © 2011-2022 走看看