Java 集合实现方式详解:ArrayList、LinkedList、HashSet、TreeSet、HashMap、TreeMap
Java中集合主要有以下几种实现方式:
-
'ArrayList':基于动态数组实现,支持随机访问、快速插入和删除元素,底层使用数组实现。
-
'LinkedList':基于双向链表实现,支持快速插入和删除元素,但不支持随机访问,底层使用链表实现。
-
'HashSet':基于哈希表实现,支持快速插入、删除和查找元素,不保证元素的顺序,底层使用哈希表实现。
-
'TreeSet':基于红黑树实现,支持快速插入、删除和查找元素,保证元素的有序性,底层使用红黑树实现。
-
'HashMap':基于哈希表实现,支持快速插入、删除和查找元素,不保证元素的顺序,底层使用哈希表实现。
-
'TreeMap':基于红黑树实现,支持快速插入、删除和查找元素,保证元素的有序性,底层使用红黑树实现。
不同实现方式之间的关联:
-
'ArrayList' 和 'LinkedList' 都是实现了 'List' 接口,都支持按索引访问元素,但是 'ArrayList' 的访问速度更快,而 'LinkedList' 的插入和删除速度更快。
-
'HashSet' 和 'HashMap' 都是实现了 'Set' 接口,都使用哈希表实现,但是 'HashSet' 只存储值,而 'HashMap' 存储键值对。
-
'TreeSet' 和 'TreeMap' 都是实现了 'SortedSet' 和 'SortedMap' 接口,都使用红黑树实现,保证元素的有序性。
原文地址: https://www.cveoy.top/t/topic/nipi 著作权归作者所有。请勿转载和采集!