Loading

集合框架

Java集合分为Collection和Map两种体系

  • Collection接口:单列数据,定义了存取一组对象的方法的集合
    • List:元素有序、可重复的集合
      • ArrayList:作为List接口的主要实现类;线程不安全,效率高;底层使用Object[] elementData存储
      • LinkedList:对于频繁的插入、删除操作,使用此类效率比ArrayList高;底层使用双向链表存储
      • Vector:List接口的古老实现类;线程安全,效率低;底层使用Object[] wlwmentData存储
    • Set:元素无序、不可重复的集合
      • HashSet:Set接口的主要实现类;线程不安全;可以存储null值
      • LinkedHashSet:HashSet的子类;遍历其内部数据时,可以按照添加的顺序遍历,对于频繁的遍历操作,LinkedHashSet效率高于HashSet
      • TreeSet:可以按照添加对象的指定属性进行排序
  • Map接口:双列数据,保存具有映射关系“key-value”的集合

Collection接口继承树

Map接口继承树

Map:双列数组,存储key-value对的数组

  • HashMap:作为Map的主要实现类;线程不安全的,效率高;存储null的key和value

  • LinkedHashMap:保证在遍历map元素时,可以按照添加的顺序实现遍历。

    在原有的HashMap底层结构基础上,添加了一对指针,指向前一个和后一个元素。

    对于频繁的遍历操作,此类执行效率高于HashMap。

  • TreeMap:保证按照添加的key-value对进行排序,实现排序遍历。此时考虑key的自然排序或定制排序底层使用红黑树

  • Hashtable:作为古老的实现类;线程安全的,效率低;不能存储null的key和value

    • Properties:常用来处理配置文件。key和value都是String类型

posted @ 2021-05-29 11:17  北兢王  阅读(56)  评论(0)    收藏  举报