深入java集合1: 各集合关系及特点

141 阅读1分钟

一、java各集合及其继承关系:

图片来源:blog.csdn.net/feiyanaffec… List系列、Set系列、Queue系列都是继承于Collection类,Map系列实现了Map接口。


二、同种类集合的特点

1. List(有序、可重复、索引(标号))

1.1 ArrayList

  • 增删查效率高(相较于LinkedList)
  • 批量删除效率低(相较于LinkedList)
  • 元素可以为null
  • 线程不安全
  • 容量不固定

1.2 LinkedList

  • 增删查效率低(相较于ArrayList)
  • 批量删除效率高(相较于ArrayList)
  • 线程不安全
  • 容量不固定



1.3 Vector

  • 线程安全
  • 效率低(相较于其他两个)

2.Set(无序、不重复)

2.1 HashSet

  • 无序
  • 不重复
  • 线程不安全

2.2 TreeSet

  • 有序,自然排序(从大到小)
  • 不重复
  • 线程不安全

3.Map

3.1 HashMap

  • 效率高
  • 线程不安全
  • 可以存null值和null键

3.2 TreeMap

  • 效率较低(相较于HashMap)
  • 线程不安全
  • 可以存null值,不可以存null键
  • 自然排序

3.3 HashTable

  • 线程安全
  • 被弃用