JDK源码
lxl_118
不想只做一条咸鱼
展开
-
HashMap源码学习
HashMap:基于哈希表的 Map 接口的实现。此实现提供所有可选的映射操作,并允许使用 null 值和 null 键。 HashMap主要默认属性: /** * 默认初始容量-必须为2的幂。 * * 默认初始容量为什么是16: * 1.小了可能频繁发生扩容,影响效率,太大了又浪费空间,不划算,16作为一个经验值被采用。 * * 容量为什么必须是2的幂次方: * 1.(n - 1) & hash,当n为2次幂时,会满足一个公式:(n - 1) & hash = ha原创 2020-09-21 22:06:17 · 91 阅读 · 0 评论 -
String学习
字符串类型是java常用的数据类型,面试中也经常被问到的,想在面试中更好的回答面试官的问题,就要对其底层原理进行理解。 1.存储数据结构:字符数组 /** 用于存储字符串的值 */ private final char value[]; /** 缓存字符串的hash code值 */ private int hash; // Default to 0 2.主要构造方法: public String() { this.value = "".value; } public原创 2020-09-14 20:32:37 · 186 阅读 · 0 评论