HashMap为大家常用的java数据结构工具类,下面对HashMap进行源码分析。 类图结构如下: 其中AbstractMap实现了 public V get(Object key) , public V remove(Object key), public Set<K> keySet(), pu ...
分类:
其他好文 时间:
2017-05-31 23:13:56
阅读次数:
284
1、删除不需要的代码,即swing相关的代码 2、执行命令时要将前提环境进入文件夹如下: 起初没有完全执行第一条,因为网上说可以根据需要选择相关的代码,于是就没有删除,以后第一次模仿网上的例子的时候要按照原模原样来进行,这样才会减少出错的可能性。 查看日志,发现很多警告,直接ctrl+F查找“错误” ...
分类:
其他好文 时间:
2017-05-31 20:53:41
阅读次数:
180
String类的理解 简记录一下对于jdk的学习,做一下记录,会持续补充,不断学习,加油 1.String的hash值的计算方法。 hash值的计算方法多种多样,jdk中String的计算方法如下,比较简单,由字符串中的字符的ASCII值计算出来。 ...
分类:
其他好文 时间:
2017-05-30 15:43:06
阅读次数:
227
最近突然萌发了研究JDK源码的想法,所以就想到了在自己常用的Eclipse上可以调试JDK源码。 整个设置过程也很简单: 首先你要安装好JDK(我的JDK安装路径根目录是D:\Java\jdk-8u92-windows-x64),JDK安装路径里有个“src.zip”就是JDK的源码文件压缩包; 设 ...
分类:
系统相关 时间:
2017-05-27 23:56:38
阅读次数:
495
最近突然萌发了研究JDK源码的想法,所以就想到了在自己常用的Eclipse上可以调试JDK源码。 整个设置过程也很简单: 首先你要安装好JDK(我的JDK安装路径根目录是D:\Java\jdk-8u92-windows-x64),JDK安装路径里有个“src.zip”就是JDK的源码文件压缩包; 设 ...
分类:
系统相关 时间:
2017-05-27 10:31:45
阅读次数:
2596
JAVA 用数组实现 ArrayList 我们知道 ArrayList 是一个集合,它能存放各种不同类型的数据,而且其容量是自动增长的。那么它是怎么实现的呢? 其实 ArrayList 的底层是用 数组实现的。我们查看 JDK 源码也可以发现。而用数组实现集合的原理有两点: 1、能自动扩容 2、能存 ...
分类:
编程语言 时间:
2017-05-25 14:45:54
阅读次数:
242
集合 Collection,根据已知的内容可以知道有List、Set、Map(严格说,Map不属于Collection)等大类。 先查看 Collection, public interface Collection extends Iterable JDK说明如下: /** * The root ... ...
分类:
其他好文 时间:
2017-05-14 22:19:09
阅读次数:
235
结合《jdk源码》与《thinking in java》,对java集合框架做一些简要分析(本着实用主义,精简主义,遂只会挑出个人认为是高潮的部分)。 先上一张java集合框架的简图: 会从以下几个方面来进行分析: 关于数组array: 数组的解释是:存储固定大小的同类型元素。由于是”固定大小“,所 ...
分类:
编程语言 时间:
2017-05-13 11:22:21
阅读次数:
142
关于LinkedList的分析,会从且仅从其添加(add)方法入手。 因为上一篇已经分析过ArrayList,相似的地方就不再叙述,关注点在LinkedList的特点。 属性: /** *链表头 */ transient Node<E> first; /** * 链表尾 */ transient N ...
分类:
编程语言 时间:
2017-05-13 10:06:33
阅读次数:
150
关于ArrayList的分析,会从且仅从其添加(add)与删除(remove)方法入手。 ArrayList类定义: ArrayList基本属性: /** * Default initial capacity.(默认初始化大小) */ private static final int DEFAULT ...
分类:
编程语言 时间:
2017-05-12 19:12:08
阅读次数:
206