随笔分类 -  java集合

摘要:java集合体系 集合分为两组*(单列集合,双列集合)* 单列:Collection 主要子接口:List(有序可重复)、Set(无序) 双列:Map 主要实现类:HashTable、HashMap、TreeMap 单列 List(有序可重复) 所有实现类: 主要实现类:Vector、ArrayLi 阅读全文
posted @ 2022-02-27 15:46 CoderCatIce 阅读(116) 评论(0) 推荐(0)
摘要:LinkedHashSet源码分析 java模拟数组+链表:java模拟数组+链表 - CoderDreams - 博客园 (cnblogs.com)(LinkedHashSet为双向链表) 结论 LinkedHashSet加入顺序和取出元素的顺序是一致的 维护的是一个LinkedHashMap(是 阅读全文
posted @ 2022-02-26 16:45 CoderCatIce 阅读(41) 评论(0) 推荐(0)
摘要:HashSet小练习 需求 定义一个Employee类 该类包含: private成员属性name,sal,birthday(MyDate类型) 其中 birthday为 MyDate类型(属性包括:year, month, day) 要求: 创建3个Employee 放入HashSet中 当nam 阅读全文
posted @ 2022-02-26 13:41 CoderCatIce 阅读(64) 评论(0) 推荐(0)
摘要:HashSet源码分析 java模拟数组+链表:java模拟数组+链表 - CoderDreams - 博客园 (cnblogs.com) 结论 HashSet底层是HashMap 添加一个元素时:先得到Hash值 ==> 转成索引 找到存储数据表table,检查这个索引位置是否已经存放有元素 如果 阅读全文
posted @ 2022-02-26 13:08 CoderCatIce 阅读(33) 评论(0) 推荐(0)
摘要:LinkedList源码分析 大家可以先看一下这篇java简单模拟双向链表 - CoderDreams - 博客园 (cnblogs.com) 结论: 维护的是一个双向链表 无参构造器 public LinkedList() { } 无参实例化后,维护的是一个双向链表(此时:size=0;first 阅读全文
posted @ 2022-02-23 15:15 CoderCatIce 阅读(36) 评论(0) 推荐(0)
摘要:Vector源码分析 结论 无参构造,默认长度为10,满后按2倍扩容 指定大小,需要扩容时,每次按两倍扩容 源码分析 和ArrayList类似 无参构造时 无参构造器 public Vector() { // 按照10个空间大小调用带参构造器 this(10); } 带参构造时 带参构造 publi 阅读全文
posted @ 2022-02-23 13:50 CoderCatIce 阅读(50) 评论(0) 推荐(0)
摘要:ArrayList扩容源码分析 结论 实际是维护了一个Object类型的数组(transient Object[] elementData) transient表示瞬时,表示该属性不会被序列化 创建ArrayList时,调用无参构造时 初始elementData容量为0,第一次添加时,扩容至10 如 阅读全文
posted @ 2022-02-23 09:26 CoderCatIce 阅读(41) 评论(0) 推荐(0)

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