Java 常用集合及特点

2023-12-16 11:57:30

Java 常用集合及特点?

List:

ArrayList、LinkedList、Vector、Stack Set:LinkedSet、HashSet、TreeSet Queue->Deque->LinkedList。

Map:

HashMap、LinkedHashMap、TreeMap Dictionary->HashTable->Properties。

Vector:

底层数据结构是数组,查询快,增删慢,线程安全,效率低,默认长度为 10,超过会 100%延长,变成 20,浪费空间。

ArrayList :

基于数组,便于按 index 访问,超过数组需要扩容,扩容成本较高。LinkedList: 使 用 链 表 实 现 , 无 需 扩 容 。 HashSet:底层数据结构是哈希表(无序,唯一),通过 hashcode()和 equals()保证元素唯一。

LinkedHashSet:

底层数据结构是链表和哈希表(FIFO 插入有序,唯一),由链表保证元素有序,由哈希表保证元素唯一。

TreeSet:

底层数据结构是红黑树(唯一,有序),通过自然排序和比较器排序保证元素有序,根据比较返回值是否是 0 来保证元素唯一性。
TreeMap 是有序的。

HashMap :

空间换时间,哈希冲突不大的情况下查找数据性能很高。

LinkedHashMap 基本特点:

继承自 HashMap,对 Entry 集合添加了一个双向链表。

文章来源:https://blog.csdn.net/weixin_44797327/article/details/135030114
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。