
JAVA集合
文章平均质量分 88
JAVA集合
莫子莫
这个作者很懒,什么都没留下…
展开
-
【JAVA集合】HashMap
桶数组是用来存储数据元素,链表是用来解决冲突,红黑树是为了提高查询 的效率。元素通过计算哈希公式得到具体位置,存储到数组中,但数组中已有元素占用位置,则用链表来存放发生冲突的元素,当链表长度大于8时,则会将链表转化为红黑树,提高查询效率。原创 2023-09-25 12:32:22 · 154 阅读 · 1 评论 -
【JAVA集合】ArrayList的扩容机制以及序列化
这种扩容机制使得在插入大量元素时,ArrayList的效率较高,因为每次扩容只需要创建一次新数组,然后进行一次元素复制,而对于元素插入的每次操作,只需要在新数组中找到合适的位置插入即可。扩容的过程是创建一个新的数组,其长度是原数组长度的1.5倍(也可以理解为原数组长度加上原数组长度的一半),然后将原数组的所有元素复制到新数组中。ArrayList的底层实现是动态数组,其扩容机制是在需要插入新元素而当前数组容量不够时,通过创建一个新的数组,并将原数组中的元素复制到新数组中,以实现扩容。原创 2023-09-15 16:18:58 · 199 阅读 · 0 评论