Java流行集合框架解析

ArrayList

ArrayList 的存储原理

  • ArrayList 是 List 接口可变数组的实现,在 java 开发中使用频率相当高,它的底层是使用数组存储元素,添加原理为数组扩容,当数组大小不足以存放新增元素的时候,就会发生数组扩容.

对其add()方法解析:
在这里插入图片描述

LinkedList

LinkedList的存储原理

  • LinkedList 是 List 接口可变队列的实现,基于链表实现的,它的底层是双向链表接口.链表在内存中不是连续的,是通过引用来指向上个元素和下个元素,链表的优点在于添加元素和删除元素比较快,因为是引用指向,所以在查询方面比 ArrayList 慢,但是链表无容量限制.

同样对其add()方法解析:
在这里插入图片描述

TreeSet

TreeSet的存储原理

  • TreeSet 是 Set 接口树结构的实现,底层为平衡二叉树(红黑树).

对其add()方法解析:
在这里插入图片描述

Queue

Queue 的原理

  • Queue 在进行插入操作的时候,元素将在表的后端插入,在进行删除操作的时候则会在前端删除.(也就是FIFO–first in first out
    对其add()方法解析:
    在这里插入图片描述

好了以上就是对一些常用集合的底层解析,不知道对你有没有帮助呢?无论如何感谢您的观看,有问题可以在评论区中提出哦!

转载请注明出处哦!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值