集合

57 阅读1分钟

1 Collection接口

1.1 List接口

里面存放的数据是有序的,可以存放重复的数据。

1.1.1 ArrayList

底层数据结构是数组,线程不安全,查询快,增删慢。

1.1.2 LinkedList

底层数据结构是链表,线程不安全,查询慢,增删快。

1.1.3 Vector

底层数据结构是数组,线程安全的。

1.2 Set接口

里面存放的数据是无序的,不能存放重复的数据。

1.2.1 HashSet

存储方式跟元素的哈希值有关,特点是元素不能重复,存取顺序不一致,没有索引。

1.2.2 LinkedHashSet

使用了链表的数据结构,特点是读取元素的顺序跟存入元素的顺序是一致的,并且元素不能重复。

1.2.3 TreeSet

可以对存放进去的元素进行排序。

1.3 Queue接口

是一个队列,里面的数据是先进先出,可以存放重复的数据。

2 Map接口

map中的元素是以键-值的方式存在的,通过键可以获取到值,键是不可以重复的

2.1 HashMap

底层是哈希表,可以存储null键和null值

2.2 LinkedHashMap

底层是链表,存取顺序一致

2.3 HashTable

线程安全的,效率低,不可以存储null键和null值

2.4 TreeMap

底层是红黑树,可以对存储的元素进行排序