摘要: HashSet简介 HashSet继承AbstractSet,实现了Set,Cloneable,java.io.Serializable接口,故可拷贝,可序列化; HashSet依赖于HashMap,在HashMap中放入元素实际上都是放入HashMap 的实例 map中作为key,每个value都 阅读全文
posted @ 2020-07-17 02:34 ahpuched 阅读(349) 评论(0) 推荐(0) 编辑
摘要: 1. HashMap源码简介 HashMap数据结构本质上是散列表,jdk1.8前,利用链表处理哈希冲突,jdk1.8利用链表和红黑树来解决哈希冲突。具体来讲当链表的长度等于8时,链表就被树化为红黑树,总之jdk1.8前HashMap的数据结构为数组+链表(数组在HashMap中又称为buckets 阅读全文
posted @ 2020-07-17 02:31 ahpuched 阅读(225) 评论(0) 推荐(0) 编辑
摘要: 1. LinkedList简介 LinkedList数据结构为双链表, 继承了AbstractSequentialList 实现了List, Deque, Cloneable, java.io.Serializable接口; 允许所有元素为null; LinkedList多线程环境下,不是线程安全的 阅读全文
posted @ 2020-07-17 02:27 ahpuched 阅读(236) 评论(0) 推荐(0) 编辑
摘要: **告读者:**这是基于jdk1.8.0_231的ArrayList源码解析,主要总结了ArrayList类的扩容机制,fail-fast机制,迭代器,视图,和java8中引入的函数式编程,以及相关API的使用,对add addAll remove removeAll removeIf set ge 阅读全文
posted @ 2020-07-16 14:34 ahpuched 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 众所周知,java中两个浮点数判断相等,不可以直接使用 == ,而浮点数的运算,有时结果也令人大吃一惊。如 System.out.println(100.1F == 100.099999999F) 结果true,System.out.println(0.05 + 0.01) 结果为 0.060000 阅读全文
posted @ 2020-06-27 00:18 ahpuched 阅读(621) 评论(0) 推荐(0) 编辑