Java集合
文章平均质量分 92
校生兄
这个作者很懒,什么都没留下…
展开
-
HashMap底层源码分析
HashMap集合 1.HashMap集合简介 HashMap基于哈希表的Map接口实现,是以key-value存储形式存在,即主要用来存放键值对。HashMap 的实现不是同步的,这意味着它不是线程安全的。它的key、value都可以为null。此外,HashMap中的映射不是有序的。 JDK1.8 之前 HashMap 由 数组+链表 组成的,数组是 HashMap 的主体,链表则是主要为了解决哈希冲突**(两个对象调用的hashCode方法计算的哈希码值一致导致计算的数组索引值相同)**而存在原创 2021-06-11 18:37:03 · 123 阅读 · 1 评论 -
LinkedList源码分析
链表 链表的介绍 手写单链表&双链表 LinkedList 源码阅读 LinkedList 并发修改异常 LinkedList 多线程安全问题的产生和解决 常见算法题 用两个链表实现栈 一、ArrayList引发的思考 优点:查询快 缺点 1、增删慢,消耗cpu的性能 情况一、指定索引上的添加 情况二、如果原数组中的元素已经不够了 2、比较浪费内存空间 有没有原创 2021-06-11 12:25:37 · 145 阅读 · 1 评论 -
ArrayList底层源码分析
ArrayList底层源码分析 1. ArrayList集合底层数据结构 ArrayList集合介绍 List 接口的可调整大小的数组实现。 数组:一旦初始化长度就不可以发生改变 数组结构介绍 增删慢:每次删除元素,都需要更改数组长度、拷贝以及移动元素位置。 查询快:由于数组在内存中是一块连续空间,因此可以根据地址+索引的方式快速获取对应位置上的元素。 2. ArrayList继承关系 2.1 Serializable标记性接口 介绍: 类的序列化由实现java.io.Seria原创 2021-04-17 21:35:19 · 145 阅读 · 0 评论