
JAVA集合源码
文章平均质量分 92
JAVA集合源码
狂奔的蜗牛Evan
hello world
展开
-
在Java项目中使用traceId跟踪请求全流程日志
最近在项目开发中遇到了一些问题,项目为多机部署,使用kibana收集日志,但并发大时使用日志定位比较麻烦,大量日志输出导致很难筛出指定请求的全部相关日志,以及下游服务调用对应的日志。因此计划对项目日志打印进行一些小改造,使用一个traceId跟踪请求的全部路径,前提是不修改原有的打印方式。想要跟踪请求,第一个想到的就是当请求来时生成一个traceId放在ThreadLocal里,然后打印时去取就行了。但在不改动原有输出语句的前提下自然需要日志框架的支持了,搜索的一番发现主流日志框架都提供了MDC功能。MDC转载 2022-07-04 14:57:05 · 4150 阅读 · 0 评论 -
(Java集合类源码解析)第七章 常用Java集合类总结
第七章 常用Java集合类总结7.1、List(允许重复元素)ArrayList: 底层数据结构:Object[] 在查询(get)、遍历(iterator)、修改(set)使用的比较多的情况下,用ArrayList 可扩容,容量无限 LinkedList 底层数据结构:环形双向链表 在增加(add)、删除(remove)使用比较多的情况下,用LinkedList 链表,容量无限 说明:1)add(E e):在数组末尾插入元素,ArrayList需要考虑扩容问题,一转载 2020-09-27 15:32:09 · 140 阅读 · 0 评论 -
(Java集合类源码解析)第六章 HashSet源码解析
第六章 HashSet源码解析6.1、对于HashSet需要掌握以下几点HashSet的创建:HashSet() 往HashSet中添加单个对象:即add(E)方法 删除HashSet中的对象:即remove(Object key)方法 判断对象是否存在于HashSet中:containsKey(Object key)注:HashSet没有获取单个对象的方法,需要使用iterator6.2、构建HashSet源代码: //HashSet底层数据结构:通过...转载 2020-09-25 14:42:16 · 133 阅读 · 0 评论 -
(Java集合类源码解析)第五章 HashMap源码解析
第五章 HashMap源码解析5.1、对于HashMap需要掌握以下几点Map的创建:HashMap() 往Map中添加键值对:即put(Object key, Object value)方法 获取Map中的单个对象:即get(Object key)方法 删除Map中的对象:即remove(Object key)方法 判断对象是否存在于Map中:containsKey(Object key) 遍历Map中的对象:即keySet(),在实际中更常用的是增强型的for循环去做遍历 Map中对转载 2020-09-25 14:32:03 · 263 阅读 · 0 评论 -
(Java集合类源码解析)第四章 四种List实现类的对比总结
第四章 四种List实现类的对比总结1、ArrayList非线程安全 基于对象数组 get(int index)不需要遍历数组,速度快; iterator()方法中调用了get(int index),所以速度也快 set(int index, E e)不需要遍历数组,速度快 add方法需要考虑扩容与数组复制问题,速度慢 remove(Object o)需要遍历数组,并复制数组元素,速度慢 remove(int index)不需要遍历数组,需要复制数组元素,但不常用 contain(E转载 2020-09-25 14:29:51 · 166 阅读 · 0 评论 -
(Java集合类源码解析)第三章 LinkedList源码解析
第三章 LinkedList源码解析一、对于LinkedList需要掌握的八点内容LinkedList的创建:即构造器 往LinkedList中添加对象:即add(E)方法 获取LinkedList中的单个对象:即get(int index)方法 修改LinkedList中的指定索引的节点的数据set(int index, E element) 删除LinkedList中的对象:即remove(E),remove(int index)方法 遍历LinkedList中的对象:即iterato转载 2020-09-25 14:28:19 · 102 阅读 · 0 评论 -
(Java集合类源码解析)第二章 ArrayList源码解析
第二章 ArrayList源码解析一、对于ArrayList需要掌握的七点内容ArrayList的创建:即构造器 往ArrayList中添加对象:即add(E)方法 获取ArrayList中的单个对象:即get(int index)方法 删除ArrayList中的对象:即remove(E)方法 遍历ArrayList中的对象:即iterator,在实际中更常用的是增强型的for循环去做遍历 判断对象是否存在于ArrayList中:contain(E) ArrayList中对象的排序:主要转载 2020-09-25 14:26:25 · 211 阅读 · 0 评论 -
(Java集合类源码解析)第一章 Java常用集合类总览
第一章 Java常用集合类总览1、Java最常用的集合类Collection接口 List接口(允许有重复元素):ArrayList、LinkedList、Vector、Stack Set接口(不允许有重复元素,可用于去重操作):HashSet、TreeSet Map接口 HashMap TreeMap(具有按key排序的功能) 2、对于Collection需要掌握的七点内容Collection的创建:即构造器,掌握在构造器方法中Collection的实现类做了一些什么转载 2020-09-25 14:22:48 · 202 阅读 · 0 评论