随笔分类 -  集合源码学习

摘要:HashSet 1、总体架构 2、方法源码 可以看到其实内部就是一个hashMap 其他方法 add()方法 阅读全文
posted @ 2022-10-11 09:43 大大怪下士 阅读(7) 评论(0) 推荐(0) 编辑
摘要:LinkedList 1、总体架构 2、方法源码 2.1 构造方法() 2.2 addAll()方法 2.3 linkFirst()方法 目的是将这个节点放到第一个节点位置,linkLast()方法同理 2.4 getFirst()方法 获取第一个节点的值,getLast()获取最后一个节点的值。 阅读全文
posted @ 2022-10-10 14:33 大大怪下士 阅读(83) 评论(0) 推荐(0) 编辑
摘要:HashMap 1、总体架构 2、方法源码 2.1 hash()方法 这里进行了一次扰动计算,hash值右移16位高位也参加运算,增大随机性。 2.2 构造方法() https://www.cnblogs.com/xiyixiaodao/p/14483876.html这个讲的真不错,可以多看看。 2 阅读全文
posted @ 2022-10-10 10:58 大大怪下士 阅读(8) 评论(0) 推荐(0) 编辑
摘要:arraylist 1、总体关系图 1.1:Serializable接口 这是一个空接口,只有实现了这个接口的对象才可以进行序列化。 然后这个序列化id是为了保证反序列化成功也就是在运行时来判断id是否一致来缺点统一版本。 transient关键字修饰的属性不会被序列化。那arraylist的元素怎 阅读全文
posted @ 2022-10-09 14:41 大大怪下士 阅读(14) 评论(0) 推荐(0) 编辑
摘要:学集合之前我们先来学习迭代器?那什么是迭代器。 迭代器是对集合进行遍历,而每一个集合内部的存储结构都是不同的,所以每一个集合存和取都是不一样,那么就需要在每一个类中定义hasNext()和next()方法,这样做是可以的,但是会让整个集合体系过于臃肿,迭代器是将这样的方法向上抽取出接口,然后在每个类 阅读全文
posted @ 2022-09-30 15:57 大大怪下士 阅读(55) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示