摘要: 1. 概述 LinkedHashMap 继承自 HashMap,在 HashMap 基础上,通过维护一条双向链表,解决了 HashMap 不能随时保持遍历顺序和插入顺序一致的问题。除此之外,LinkedHashMap 对访问顺序也提供了相关支持。在一些场景下,该特性很有用,比如缓存。在实现上,Lin 阅读全文
posted @ 2020-07-19 16:31 水寒Blogs 阅读(39) 评论(0) 推荐(0) 编辑
摘要: 一、简介 TreeMap最早出现在JDK 1.2中,是 Java 集合框架中比较重要一个的实现。TreeMap 底层基于红黑树实现,可保证在log(n)时间复杂度内完成 containsKey、get、put 和 remove 操作,效率很高。另一方面,由于 TreeMap 基于红黑树实现,这为 T 阅读全文
posted @ 2020-07-19 15:51 水寒Blogs 阅读(29) 评论(0) 推荐(0) 编辑
摘要: 1. 概述 本篇文章我们来聊聊大家日常开发中常用的一个集合类 - HashMap。HashMap 最早出现在 JDK 1.2中,底层基于散列算法实现。HashMap 允许 null 键和 null 值,在计算哈键的哈希值时,null 键哈希值为 0。HashMap 并不保证键值对的顺序,这意味着在进 阅读全文
posted @ 2020-07-19 15:26 水寒Blogs 阅读(37) 评论(0) 推荐(0) 编辑
摘要: 1.概述 LinkedList 是 Java 集合框架中一个重要的实现,其底层采用的双向链表结构。和 ArrayList 一样,LinkedList 也支持空值和重复值。由于 LinkedList 基于链表实现,存储元素过程中,无需像 ArrayList 那样进行扩容。但有得必有失,LinkedLi 阅读全文
posted @ 2020-07-19 14:53 水寒Blogs 阅读(29) 评论(0) 推荐(0) 编辑
摘要: 1.概述 ArrayList 是一种变长的集合类,基于定长数组实现。ArrayList 允许空值和重复元素,当往 ArrayList 中添加的元素数量大于其底层数组容量时,其会通过扩容机制重新生成一个更大的数组。另外,由于 ArrayList 底层基于数组实现,所以其可以保证在 O(1) 复杂度下完 阅读全文
posted @ 2020-07-19 14:36 水寒Blogs 阅读(38) 评论(0) 推荐(0) 编辑