![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java基础
Emiya_Zero
渣渣程序猿
展开
-
HashMap从Threshold到Integer numberOfLeadingZeros
为了易于理解HashMap的resize方法,我觉得还是先得弄懂Threshold是怎么来的。首先看Threshold的JavaDoc /** * The next size value at which to resize (capacity * load factor). * * @serial */在下一次resize时候的数组长度大小的值(c...原创 2020-04-18 23:30:24 · 262 阅读 · 0 评论 -
HashMap之putMapEntries、putVal
putMapEntriesputMapEntries使用的是默认修饰符,因此只能被本类或者该包下的类访问到 /** * Implements Map.putAll and Map constructor. * 实现了Map.putAll方法 和Map的构造方法 * * @param m the map * @param evict false ...原创 2020-04-08 22:47:48 · 732 阅读 · 0 评论 -
HashMap(一)
继承关系HashMap的继承关系不算复杂,继承了AbstractMap,实现了Map、Serializable、cloneable三个接口常量 静态方法 属性HashMap底层的数据结构在JDK1.8之前是基于数组+链表,在JDK1.8之后是数组+链表/红黑树HashMap的常量:16、2^30、0.75f、8、6、64 /** * 1左移四位表示16(默认的初始容量), 容量的...原创 2020-04-07 23:06:23 · 178 阅读 · 1 评论 -
从HashMap的comparableClassFor方法看反射
HashMap的comparableClassFor方法主要是为了判断传入的Compare类是否符合class C implements Comparable <C>,如果符合则返回C,不符合则返回null下面通过一个例子来看看:public class ComparableClassForStudy{ public static void main(String[]...原创 2020-04-06 00:03:04 · 217 阅读 · 0 评论 -
LinkedList
继承关系Arraylist是以数组实现集合,而LinkedList是以双向链表实现的集合,LinkedList的继承关系如下:Linkedlist与Arraylist的区别有:1.Arraylist直接继承AbstractList,而Linkedlist是继承的AbstractSequentialList2.Arraylist实现了RandomAccess接口可以直接用foreach遍历...原创 2020-04-01 23:14:39 · 194 阅读 · 0 评论 -
LinkedList 思维导图
原创 2020-03-29 23:05:57 · 165 阅读 · 0 评论 -
Arraylist
1.继承关系从图中可以看出Arraylist继承AbstractList类(AbstractList继承了AbstractCollection类,同时实现了list类),同时实现了Serializable、List(继承了collection接口,collection接口继承了Iterable接口)、Cloneable、RandomAccess(快速随机访问)2.属性重要的属性Obj...原创 2020-03-28 23:16:50 · 125 阅读 · 0 评论 -
Java关键字
1.Static原创 2020-03-11 22:31:27 · 130 阅读 · 0 评论 -
String、Long解析
StringString的特点就是不可变性首先看String源码:String的定义是一个常量类,所以说明String被定义后不能够修改,也不能被继承public final class StringString的属性有字符数组char value[]整形hash序列化编码serialVersionUIDObjectStreamField数组常用操作分割split...原创 2020-03-07 21:23:01 · 1670 阅读 · 0 评论