
java 源码
文章平均质量分 93
sessinsong
程序猿 码农
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Arrays.asList() add UnsupportedOperationException 问题解析
问题代码: String[] str = new String[]{"a","b","c"}; List<String> list = Arrays.asList(str); list.add("d"); 这是一个很多人在使用aslist 会遇到的坑,自己也踩过几次,今天翻阅了下源码,做个笔记,加深印象。 第一步先查看下 asList 方法的实现。...原创 2019-07-23 11:51:20 · 1250 阅读 · 0 评论 -
hashmap 实现原理总结
HashMap 实现原理 数据结构是基于哈希表实现的 (数据+链表+二叉树 (红黑树)) 默认的加载因子是0.75 默认大小是 16 存储元素 put(key,value) a. 计算key 的hash 值, hash b. 根据上面得到的hash 值和数据的长度进行 取余操作,计算出 该元素在数据组的位置 i c. 如果位置i 没有元素 直接存储, ...原创 2018-03-17 18:18:07 · 288 阅读 · 0 评论 -
hashmap 源码解析 new HashMap()
hashmap 源码解析 new HashMap<>(7) hashmap 实例化有四个构造方法 分别是: 默认构造函数: 最常用 public HashMap() { this.loadFactor = DEFAULT_LOAD_FACTOR; // all other fields defaulted } 指定初始化大小的 public HashMa...原创 2019-08-02 20:59:25 · 780 阅读 · 0 评论 -
hashmap 源码解析 扩容
这篇文章是针对 前两篇 hashmap 实现原理总结 hashmap 源码解析 new HashMap() 的补充,主要是讲解hashmap 是怎么进行扩容的。 先大概说下总结,后面在进行详细描述 如果使用的无参的构造函数申明的hashmap 在第一次put 数据的时候回进行初始化扩容,初始化map 大小是16, 扩容阈值是 12 如果使用了带参数的构造函数申明的hashmap, 在第一次put...原创 2019-08-06 18:03:10 · 347 阅读 · 0 评论 -
spring aop DefaultAopProxyFactory 默认代理源码解析
本文主要分析 spring aop DefaultAopProxyFactory.java 里面 选择默认代理逻辑 主要方法 @Override public AopProxy createAopProxy(AdvisedSupport config) throws AopConfigException { // 如果指定了 optimize为true 或者是proxyTargetClass...原创 2019-08-07 21:09:04 · 1005 阅读 · 0 评论