![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
容器
startwang@
没错,我很懒,什么也没有
展开
-
容器的比较
容器的比较(一)一、List的比较1、ArrayList:1、 底层实现是通过定义一个 Object[] 的数组的方式,来进行创建 一个数组,同时具备了数组的特性:2、无法改变大小,无法去修改3、所有的数据都在同一连续的区域内,方便与查找4、当数组容量满的时候,就会将数组扩充为原来的1.5倍(利用位运算,左移动一位加上元拉里的大小,刚好1.5倍),底层利用了copy的方法(Syst...原创 2019-05-27 19:45:43 · 325 阅读 · 0 评论 -
手写基本容器——ArrayList(一)
手写基本的ArrayList思路1、先写一个基与数组的对象,可以存储我们的数据到里面2、增加一个可以可以添加元素的函数3、然后容器建成后需要打印数组,就需要重写toString的方法,这里我们调用其它的对象来代替4、我们可以写成一个最基本的和原始的ArrayList容器5、增加了泛型6、增加自动扩容,当数组满的时候,我们可以根据一定的算法来进扩容7、增加一些索引(index)的操作,但同时还要去检...原创 2019-05-27 20:28:37 · 107 阅读 · 0 评论 -
手写基本容器——LinkedList(二)
手写基本容器——LinkedList底层实现1、建立一个Node节点2、添加add和toString的方法3、添加remove的功能4、添加泛型5、优化一下代码底层实现1、LinkedList的底层实现是通过定义像链表一样的结构2、每个表的开始都是有一个first和last来记录我们的第一个和最后一个的value值的地址就可以,然后中间的部分我们可以使用“前一个”和“下一个”来遍历整个数...原创 2019-05-28 13:50:54 · 104 阅读 · 0 评论 -
手写基本容器——Vector(三)
手写基本容器——Vector基本的结构基本的结构源代码是利用数组的方式来进行底层实现的/** * The array buffer into which the components of the vector are * stored. The capacity of the vector is the length of this array buffer, ...原创 2019-05-28 14:10:35 · 287 阅读 · 0 评论 -
手写基本容器——Set (五)
手写基本容器——Set HashSet底层JDK代码代码实现展示TreeMapJDK底层源码代码HashSet底层JDK代码private transient HashMap<E,Object> map; // Dummy value to associate with an Object in the backing Mapprivate static final...原创 2019-05-28 15:52:41 · 639 阅读 · 0 评论