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()方法解析:
好了以上就是对一些常用集合的底层解析,不知道对你有没有帮助呢?无论如何感谢您的观看,有问题可以在评论区中提出哦!
转载请注明出处哦!